
:root{
  --color-primary: rgba(28,37,57,1);
  --color-primary-background: rgba(28,37,57,1);
  --color-primary-hover: rgba(45,57,83,1);
  --color-primary-background-hover: rgba(45,57,83,1);
  --color-border-subheading-bg: rgba(28,37,57,0.10);
  --color-background-subheading: rgba(28,37,57,0.05);
  --color-foreground-subheading: rgba(93,102,111,1);
  /* Boutons secondaires : fond légèrement teinté + bordure (plus de blanc invisible sur blanc) */
  --color-secondary-button-text: rgba(28,37,57,1);
  --color-secondary-button-background: rgba(248,250,252,.98);
  --color-secondary-button-border: rgba(28,37,57,.22);
  --color-secondary-button-icon: rgba(255,255,255,1);
  --color-secondary-button-icon-background: rgba(28,37,57,1);
  --color-secondary-button-hover-text: rgba(255,255,255,1);
  --color-secondary-button-hover-background: rgba(28,37,57,1);
  --color-secondary-button-hover-border: rgba(28,37,57,1);
  --color-secondary-button-hover-icon: rgba(28,37,57,1);
  --color-secondary-button-hover-icon-background: rgba(255,255,255,1);
  /* Rayons & ombres : une échelle pour cartes / panneaux / encarts (réf. maquette ~28–32px) */
  --pgm-radius-pill: 999px;
  --pgm-radius-micro: 6px;
  --pgm-radius-icon-sm: 16px;
  --pgm-radius-input: 18px;
  --pgm-radius-icon: 18px;
  --pgm-radius-card: 28px;
  --pgm-radius-surface: 32px;
  --pgm-shadow-card: 0 10px 40px rgba(15,23,42,.05);
  --pgm-shadow-panel: 0 30px 80px rgba(15,23,42,.08);
  --pgm-shadow-cta: 0 24px 60px rgba(15,23,42,.14);
}
@media (max-width:767px){
  :root{
    --pgm-radius-card: 26px;
    --pgm-radius-surface: 26px;
  }
}
@media (max-width:575px){
  :root{
    --pgm-radius-card: 22px;
    --pgm-radius-surface: 22px;
  }
}
html{scroll-behavior:smooth}

/* —— Boutons : padding symétrique + texte centré (le thème mettait 10px / 30px et décalait le libellé) —— */
.button{
  padding:12px 28px!important;
  justify-content:center!important;
  align-items:center!important;
  box-sizing:border-box;
  text-align:center;
}
.button .svg-wrapper{
  flex-shrink:0;
}
.button-without-icon{
  padding:12px 28px!important;
}
.button--slim{
  padding:10px 22px!important;
}
@media (max-width:767px){
  .button{
    padding:11px 22px!important;
  }
  .button--slim{
    padding:9px 18px!important;
  }
}
@media (max-width:1279px){
  .header-actions .button--slim{
    padding-inline:18px!important;
  }
}
/* Liens « Lire l’article » / « Voir cette offre » : <a class="button button--link"> sans couleur dans le thème → bleu navigateur */
body.pgm-inner a.button.button--link,
body.pgm-home a.button.button--link{
  color:#24324a!important;
  background-color:transparent!important;
  background-image:none!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:0!important;
  padding:6px 0!important;
  justify-content:flex-start!important;
  text-align:start!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(28,37,57,.22)!important;
  font-weight:600!important;
}
body.pgm-inner a.button.button--link:visited,
body.pgm-home a.button.button--link:visited{
  color:#24324a!important;
}
body.pgm-inner a.button.button--link:hover,
body.pgm-home a.button.button--link:hover{
  color:#0f172a!important;
  border-bottom-color:rgba(28,37,57,.48)!important;
  background-color:transparent!important;
}
body.pgm-inner a.button.button--link:focus-visible,
body.pgm-home a.button.button--link:focus-visible{
  outline:2px solid rgba(28,37,57,.35);
  outline-offset:3px;
  border-radius:2px;
}
/* Même fond partout que l’accueil : bandes diagonales grises + voile + photo (slider-bg.jpg) */
body{
  color:#1c2539;
  overflow-x:hidden;
  overflow-x:clip;
  padding-left:env(safe-area-inset-left);
  padding-right:env(safe-area-inset-right);
  background-color:#e0e7f0;
  background-image:
    repeating-linear-gradient(
      -32deg,
      rgba(255,255,255,0) 0,
      rgba(255,255,255,0) 64px,
      rgba(28,37,57,0.072) 64px,
      rgba(28,37,57,0.072) 65px,
      rgba(255,255,255,0) 65px,
      rgba(255,255,255,0) 220px
    ),
    linear-gradient(180deg,rgba(255,255,255,.80) 0%,rgba(232,238,246,.72) 45%,rgba(255,255,255,.85) 100%),
    url("../img/slider/slider-bg.jpg");
  background-size:auto,auto,cover;
  background-position:0 0,0 0,center top;
  background-attachment:scroll,scroll,fixed;
  background-repeat:no-repeat,no-repeat,no-repeat;
}
@media (max-width:991px){
  body{background-attachment:scroll,scroll,scroll}
}
sticky-header{background:transparent!important}
body.pgm-inner .pgm-breadcrumb{background:transparent}
body.pgm-home .pgm-breadcrumb{background:transparent}
body.pgm-inner .pgm-section:not(.alt){background:transparent}
body.pgm-inner .pgm-section.alt{
  background:rgba(247,249,252,.72);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
body.pgm-inner .pgm-breadcrumb-kicker{margin-bottom:18px}
/* Badge « pilule » (✦ texte ✦) — fil d’Ariane, hero et sections (hors petites étiquettes blog) */
.pgm-breadcrumb-kicker.subheading.subheading-bg,
body.pgm-home .subheading.subheading-bg:not(.blog-tag),
body.pgm-inner .subheading.subheading-bg:not(.blog-tag){
  position:relative;
  align-items:center;
  gap:10px;
  padding:10px 20px!important;
  border-radius:999px!important;
  font-weight:700!important;
  font-size:13px!important;
  line-height:1.35!important;
  letter-spacing:.02em;
  color:#1c2539!important;
  border:1px solid rgba(28,37,57,0.14)!important;
  background:rgba(255,255,255,0.58)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 1px 2px rgba(15,23,42,0.06);
  --color-background-subheading:transparent;
}
.pgm-breadcrumb-kicker.subheading.subheading-bg > svg,
body.pgm-home .subheading.subheading-bg:not(.blog-tag) > svg,
body.pgm-inner .subheading.subheading-bg:not(.blog-tag) > svg{display:none!important}
.pgm-breadcrumb-kicker.subheading.subheading-bg::before,
body.pgm-home .subheading.subheading-bg:not(.blog-tag)::before,
body.pgm-inner .subheading.subheading-bg:not(.blog-tag)::before,
.pgm-breadcrumb-kicker.subheading.subheading-bg::after,
body.pgm-home .subheading.subheading-bg:not(.blog-tag)::after,
body.pgm-inner .subheading.subheading-bg:not(.blog-tag)::after{
  content:"\2726";
  font-size:10px;
  line-height:1;
  opacity:0.88;
  flex-shrink:0;
}
.header-logo img{width:auto;height:40px}
.pgm-language-switch{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border:1px solid rgba(28,37,57,.14);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#1c2539;
  font-size:13px;
  font-weight:700;
  line-height:1;
  letter-spacing:.03em;
}
.pgm-language-switch a{
  color:inherit;
  text-decoration:none;
  opacity:.58;
}
.pgm-language-switch a[aria-current="true"],
.pgm-language-switch a:hover{
  opacity:1;
}
.pgm-language-switch span{
  opacity:.35;
}
.pgm-footer-language{
  display:flex;
  justify-content:flex-end;
  margin-top:18px;
}
.footer-bottom .pgm-language-switch{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
}
@media (max-width:991px){
  .pgm-language-switch{
    padding:7px 10px;
  }
  .pgm-footer-language{
    justify-content:flex-start;
  }
}
.theme-dark{background:linear-gradient(135deg,#111827 0%,#1c2539 50%,#24324a 100%);color:#fff}
.pgm-hero{padding:170px 0 100px;position:relative;overflow:hidden;background:linear-gradient(180deg,#f6f8fb 0%,#ffffff 100%)}
.pgm-hero:before{content:"";position:absolute;right:-80px;top:-50px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(28,37,57,0.10) 0%,rgba(28,37,57,0.02) 50%,transparent 70%)}
.pgm-hero .eyebrow,.pgm-section .eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(28,37,57,0.12);background:rgba(28,37,57,0.04);padding:10px 16px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#1c2539}
.pgm-hero h1{font-size:clamp(38px,5.5vw,70px);line-height:1.02;letter-spacing:-0.04em;margin:22px 0}
.pgm-lead{font-size:clamp(16px,1.85vw,20px);line-height:1.7;color:#5d666f;max-width:760px}
.pgm-stat-card,.pgm-card{background:#fff;border:1px solid rgba(28,37,57,0.08);border-radius:var(--pgm-radius-card);box-shadow:var(--pgm-shadow-card)}
.pgm-stat-card{padding:26px;height:100%}
.pgm-stat-card .value{font-size:31px;font-weight:700;line-height:1;margin-bottom:8px}
.pgm-footer-zone{opacity:.88;margin-top:12px}
a.pgm-panel.d-block.text-decoration-none{transition:transform .2s ease,box-shadow .2s ease;color:inherit}
a.pgm-panel.d-block.text-decoration-none:hover{transform:translateY(-3px);box-shadow:0 36px 100px rgba(15,23,42,.12)}
.pgm-panel{background:#fff;border:1px solid rgba(28,37,57,0.08);border-radius:var(--pgm-radius-surface);padding:34px;box-shadow:var(--pgm-shadow-panel)}
.pgm-panel.dark{background:linear-gradient(135deg,#0f172a 0%,#1c2539 60%,#24324a 100%);color:#fff}
.pgm-panel.dark p,.pgm-panel.dark .muted{color:rgba(255,255,255,.76)}
.pgm-section{padding:100px 0}
.pgm-section.alt{background:#f7f9fc}
.pgm-card{padding:34px;height:100%;transition:transform .25s ease,box-shadow .25s ease}
.pgm-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(15,23,42,.08)}
.pgm-card h3{font-size:25px;line-height:1.2;margin-bottom:14px}
.pgm-card p,.pgm-copy,.pgm-list li,.pgm-faq .accordion-body,.pgm-faq-home .accordion-content-inner,.pgm-meta,.pgm-form-note{color:#5d666f;font-size:16px;line-height:1.8}
body.pgm-inner .pgm-faq-home{padding-bottom:90px}
.pgm-icon{width:56px;height:56px;border-radius:var(--pgm-radius-icon);display:inline-flex;align-items:center;justify-content:center;background:#f2f4f7;margin-bottom:24px}
.pgm-kicker{color:#5d666f;font-size:13px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;margin-bottom:14px}
.pgm-title{font-size:clamp(30px,3.6vw,48px);line-height:1.08;letter-spacing:-.04em;margin-bottom:20px}
.pgm-list{padding-left:0;list-style:none;margin:0}
.pgm-list li{position:relative;padding-left:32px;margin:14px 0}
.pgm-list li:before{content:"";position:absolute;left:0;top:12px;width:12px;height:12px;border-radius:50%;background:#1c2539}
.pgm-process-step{padding:26px;border-top:1px solid rgba(28,37,57,0.10)}
.pgm-process-step:first-child{border-top:0}
.pgm-process-step .num{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#5d666f;font-weight:700;margin-bottom:12px}
.pgm-breadcrumb{padding:150px 0 70px;background:transparent}
.pgm-breadcrumb h1{font-size:clamp(38px,4.5vw,66px);line-height:1.02;letter-spacing:-.04em}
.pgm-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#f2f4f7;color:#1c2539;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.pgm-grid{display:grid;gap:24px}
.pgm-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pgm-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:991px){.pgm-grid.cols-3,.pgm-grid.cols-2{grid-template-columns:1fr}.pgm-hero{padding-top:145px}.header-logo img{height:34px}}
.pgm-cta{padding:80px 0}
.pgm-quote{font-size:25px;line-height:1.5;letter-spacing:-.02em}
.pgm-article h2{font-size:34px;line-height:1.15;letter-spacing:-.03em;margin:40px 0 16px}
.pgm-article h3{font-size:25px;line-height:1.2;margin:28px 0 12px}
.pgm-article p,.pgm-article li{color:#5d666f;font-size:16px;line-height:1.9}
.pgm-article ul{padding-left:22px}
.pgm-form .form-control,.pgm-form textarea{border-radius:var(--pgm-radius-input);padding:18px 20px;border:1px solid rgba(28,37,57,.12);font-size:15px}
.pgm-form .form-control:focus,.pgm-form textarea:focus{box-shadow:none;border-color:#1c2539}
.footer-widget .widget-heading{margin-bottom:22px}
.footer-custom-copy{max-width:360px;color:rgba(255,255,255,.72);line-height:1.8}
/* Footer : AOS laisse [data-aos] à opacity 0 jusqu’à l’animation ; si l’IO ne déclenche pas, le bloc semble « disparu ». */
footer{position:relative;z-index:2}
footer [data-aos]{opacity:1!important;transform:none!important}
.pgm-mini-card{padding:22px;border:1px solid rgba(28,37,57,.08);border-radius:var(--pgm-radius-card);background:#fff;height:100%}
.pgm-seo-hidden{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* Page contact — mise en page & formulaire */
.pgm-contact-section{padding-top:72px;padding-bottom:110px}
@media (min-width:992px){
  .pgm-contact-aside{position:sticky;top:120px;align-self:flex-start}
  .pgm-service-sidebar{position:sticky;top:120px;align-self:flex-start}
}
.pgm-contact-channels{display:flex;flex-direction:column;gap:14px;margin-top:28px}
.pgm-contact-channel{
  display:flex;align-items:flex-start;gap:16px;padding:20px 22px;border-radius:var(--pgm-radius-card);
  border:1px solid rgba(28,37,57,.10);background:#fff;text-decoration:none;color:inherit;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  box-shadow:0 4px 20px rgba(15,23,42,.04);
}
.pgm-contact-channel:hover{
  transform:translateY(-2px);border-color:rgba(28,37,57,.18);
  box-shadow:0 14px 40px rgba(15,23,42,.08)
}
.pgm-contact-channel--static{cursor:default;pointer-events:none}
.pgm-contact-channel--static:hover{transform:none;border-color:rgba(28,37,57,.10);box-shadow:0 4px 20px rgba(15,23,42,.04)}
.pgm-contact-channel__icon{
  flex-shrink:0;width:48px;height:48px;border-radius:var(--pgm-radius-icon-sm);display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,rgba(28,37,57,.06) 0%,rgba(28,37,57,.10) 100%);color:#1c2539
}
.pgm-contact-channel__icon svg{width:22px;height:22px}
.pgm-contact-channel__label{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5d666f;margin-bottom:4px}
.pgm-contact-channel__value{display:block;font-size:16px;font-weight:600;color:#1c2539;word-break:break-word}
.pgm-contact-trust{margin-top:24px;padding:16px 20px;border-radius:var(--pgm-radius-input);background:rgba(28,37,57,.04);border:1px dashed rgba(28,37,57,.12);font-size:14px;color:#5d666f;line-height:1.6}
.pgm-contact-form-wrap{padding:38px 36px}
@media (max-width:575px){.pgm-contact-form-wrap{padding:28px 22px}}
.pgm-contact-form-header{margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid rgba(28,37,57,.08)}
.pgm-contact-form-header .heading{margin-bottom:10px}
.pgm-form-label{display:block;font-size:12px;font-weight:600;color:#1c2539;margin-bottom:8px;letter-spacing:.02em}
.pgm-form .form-control,.pgm-form textarea{transition:border-color .2s ease,box-shadow .2s ease}
.pgm-form .form-control::placeholder,.pgm-form textarea::placeholder{color:rgba(93,102,111,.55)}
.pgm-contact-form .button{margin-top:4px}
.pgm-breadcrumb.pgm-contact-hero{position:relative;overflow:hidden}
.pgm-breadcrumb.pgm-contact-hero:after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:min(720px,90%);height:1px;background:linear-gradient(90deg,transparent,rgba(28,37,57,.12),transparent)
}

/* —— Responsive mobile (PGM) —— */
@media (max-width:991px){
  .pgm-section{padding:72px 0}
  .pgm-breadcrumb{padding:120px 0 56px}
  .pgm-cta{padding:64px 0}
  .pgm-contact-section{padding-top:56px;padding-bottom:88px}
}

@media (max-width:767px){
  .pgm-section{padding:56px 0}
  .pgm-breadcrumb{padding:96px 0 44px}
  .pgm-breadcrumb h1{font-size:clamp(28px,7.5vw,48px)}
  .pgm-panel,.pgm-card{padding:26px}
  .pgm-card h3{font-size:22px}
  .pgm-cta{padding:52px 0}
  .pgm-quote{font-size:clamp(20px,4vw,25px)}
  .pgm-article h2{font-size:clamp(25px,5.5vw,31px);margin:32px 0 14px}
  .pgm-article h3{font-size:20px;margin:22px 0 10px}
  .pgm-contact-section{padding-top:48px;padding-bottom:72px}
  body.pgm-inner .pgm-faq-home{padding-bottom:64px}
  /* Tableaux (pages piliers) : lecture au doigt + défilement horizontal */
  body.pgm-inner .pgm-section .table-responsive{
    margin-inline:-4px;
    padding-inline:4px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  body.pgm-inner .pgm-section .table{font-size:13px}
  body.pgm-inner .pgm-section .table th,
  body.pgm-inner .pgm-section .table td{padding:10px 12px;vertical-align:top}
}

@media (max-width:575px){
  .pgm-section{padding:44px 0}
  .pgm-breadcrumb{padding:76px 0 36px}
  .pgm-panel,.pgm-card,.pgm-mini-card{padding:22px}
  .pgm-stat-card{padding:20px}
  .pgm-icon{width:48px;height:48px;border-radius:var(--pgm-radius-icon-sm);margin-bottom:18px}
  .pgm-list li{padding-left:28px;margin:12px 0}
  .pgm-cta{padding:44px 0}
  .pgm-process-step{padding:20px 0}
  /* Hero accueil : titre long FR + petits écrans */
  body.pgm-home .hero-banner .heading.text-80{
    font-size:clamp(24px,8vw,36px)!important;
    line-height:1.12;
    letter-spacing:-.03em;
    overflow-wrap:anywhere;
    hyphens:auto;
  }
  body.pgm-home .hero-banner.with-floating-header{
    --padding-block-start:calc(var(--header-height) + 28px);
    --padding-block-bottom:44px;
  }
  body.pgm-home .hero-banner .content > .buttons{
    width:100%;
    max-width:100%;
    gap:12px;
    align-items:stretch;
  }
  body.pgm-home .hero-banner .content > .buttons .button{
    width:100%;
    max-width:100%;
    justify-content:center;
  }
  body.pgm-home .hero-banner .content > .buttons > .link{
    align-self:center;
    text-align:center;
    padding-top:6px;
  }
  /* CTA alignés à droite sur desktop : pleine largeur sur téléphone */
  .pgm-section .text-lg-end{
    text-align:start!important;
  }
  .pgm-section .text-lg-end > .button{
    width:100%;
    max-width:100%;
  }
}

/* —— Pages SEO « article » (employé IA, fiduciaire, automatisation Sion, etc.) —— */
main.pgm-seo-landing .pgm-rail{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  padding-left:calc(12px + env(safe-area-inset-left));
  padding-right:calc(12px + env(safe-area-inset-right));
}
@media (min-width:1400px){
  main.pgm-seo-landing .pgm-rail{max-width:1200px}
}
main.pgm-seo-landing .pgm-section .heading.text-50,
main.pgm-aeo-guide .pgm-section .heading.text-50{
  letter-spacing:-.03em;
}
.pgm-img-cover{
  display:block;
  width:100%;
  height:auto;
  border-radius:var(--pgm-radius-card);
  max-height:560px;
  object-fit:cover;
  box-shadow:0 22px 55px rgba(15,23,42,.11);
  border:1px solid rgba(28,37,57,.07);
}
.pgm-figure-side{position:relative}
.pgm-aside-accent{
  border-left:3px solid rgba(28,37,57,.18);
}
.pgm-key-list{
  margin:0;
  padding:0;
  list-style:none;
}
.pgm-key-list li{
  position:relative;
  padding-left:28px;
  margin-bottom:14px;
  color:#5d666f;
  line-height:1.65;
}
.pgm-key-list li:last-child{margin-bottom:0}
.pgm-key-list li::before{
  content:"";
  position:absolute;
  left:4px;
  top:10px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:linear-gradient(145deg,#1c2539 0%,#3d4a63 100%);
}
@media (min-width:992px){
  .pgm-sticky-aside{position:sticky;top:116px;align-self:flex-start}
}
@media (max-width:991px){
  .pgm-sticky-aside{position:static}
}

/* —— Bandeau CTA plein largeur (fond sombre, bouton pilule clair) —— */
.pgm-cta-strip-section .pgm-rail{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  padding-left:calc(12px + env(safe-area-inset-left));
  padding-right:calc(12px + env(safe-area-inset-right));
}
@media (min-width:1400px){
  .pgm-cta-strip-section .pgm-rail{max-width:1200px}
}
.pgm-cta-strip-section{
  padding-top:0;
  padding-bottom:96px;
}
@media (max-width:991px){
  .pgm-cta-strip-section{padding-bottom:72px}
}
@media (max-width:575px){
  .pgm-cta-strip-section{padding-bottom:56px}
}
.pgm-cta-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:28px 36px;
  padding:36px 40px;
  border-radius:var(--pgm-radius-card);
  background:linear-gradient(135deg,#0f172a 0%,#1c2539 52%,#24324a 100%);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:var(--pgm-shadow-cta);
}
.pgm-cta-strip__copy{flex:1 1 280px;min-width:0}
.pgm-cta-strip__kicker{
  margin:0 0 12px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(255,255,255,.52);
}
.pgm-cta-strip__title{
  margin:0;
  font-size:clamp(1.1rem,2.35vw,1.65rem);
  font-weight:600;
  line-height:1.38;
  letter-spacing:-.025em;
  color:#fff;
  max-width:40rem;
}
.pgm-cta-strip__btn{
  flex:0 0 auto;
}
a.button.pgm-cta-strip__button,
.button.pgm-cta-strip__button{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#fff!important;
  color:#1c2539!important;
  border:1px solid #fff!important;
  border-radius:999px!important;
  padding:16px 26px!important;
  font-weight:600!important;
  font-size:15px!important;
  line-height:1.2!important;
  box-shadow:0 6px 20px rgba(0,0,0,.12);
  transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
}
a.button.pgm-cta-strip__button:hover,
.button.pgm-cta-strip__button:hover{
  background:#f4f6f9!important;
  color:#0f172a!important;
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.pgm-cta-strip__button .svg-wrapper{
  display:inline-flex;
  width:32px;
  height:32px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#1c2539;
  color:#fff;
}
.pgm-cta-strip__button .svg-wrapper .icon-20 path{fill:currentColor}
@media (max-width:767px){
  .pgm-cta-strip{padding:28px 24px}
  a.button.pgm-cta-strip__button,
  .button.pgm-cta-strip__button{width:100%;justify-content:center}
}

/* —— Simulateur coût employé IA vs salarié —— */
.pgm-cost-sim-wrap{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.pgm-cost-sim{
  background:var(--color-primary);
  color:#fff;
  padding:clamp(18px,2.6vw,30px) clamp(16px,2.4vw,28px);
  border-radius:var(--pgm-radius-card);
}
.pgm-cost-sim__heading{
  color:#fff!important;
  font-size:clamp(1.2rem,2vw,1.45rem)!important;
  line-height:1.25;
  margin:0 0 10px!important;
  font-weight:600;
}
.pgm-cost-sim__intro{
  color:rgba(255,255,255,.62)!important;
  font-size:14px!important;
  line-height:1.55;
  margin:0 0 20px!important;
}
.pgm-cost-sim__grid{
  row-gap:22px;
}
.pgm-cost-sim__field{
  margin-bottom:18px;
}
.pgm-cost-sim__field:last-child{margin-bottom:0}
.pgm-cost-sim__label{
  display:block;
  color:rgba(255,255,255,.48);
  letter-spacing:.1em;
  text-transform:uppercase;
  font-size:11px!important;
  font-weight:600;
  margin-bottom:8px;
}
.pgm-cost-sim input[type="range"]{
  width:100%;
  accent-color:#fff;
  height:5px;
  cursor:pointer;
}
.pgm-cost-sim__value{
  color:#fff!important;
  font-size:clamp(1.1rem,1.8vw,1.35rem)!important;
  margin-top:6px!important;
  line-height:1.2;
}
.pgm-cost-sim__rowline{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  padding-bottom:10px;
  margin-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.pgm-cost-sim__savings-label{
  color:rgba(255,255,255,.38);
  letter-spacing:.1em;
  text-transform:uppercase;
  font-size:11px!important;
  font-weight:600;
  margin-bottom:4px;
}
.pgm-cost-sim__savings{
  color:#fff!important;
  font-size:clamp(1.65rem,3.2vw,2.1rem)!important;
  line-height:1.1;
  font-weight:700!important;
}
.pgm-cost-sim__stat{
  margin-top:12px;
}
.pgm-cost-sim__stat .pgm-cost-sim__value{
  font-size:clamp(1rem,1.6vw,1.2rem)!important;
  color:rgba(255,255,255,.88)!important;
}
.pgm-cost-sim__bars{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.1);
}
.pgm-cost-sim__bars-title{
  color:rgba(255,255,255,.38);
  letter-spacing:.1em;
  text-transform:uppercase;
  font-size:11px!important;
  font-weight:600;
  margin-bottom:12px;
}
.pgm-cost-sim__bar-row{
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:10px;
}
.pgm-cost-sim__bar-row:last-child{margin-bottom:0}
.pgm-cost-sim__bar-label{
  color:rgba(255,255,255,.55);
  min-width:82px;
  font-size:13px!important;
}
.pgm-cost-sim__bar-track{
  flex:1;
  background:rgba(255,255,255,.1);
  border-radius:var(--pgm-radius-micro);
  height:22px;
  overflow:hidden;
}
.pgm-cost-sim__bar-fill--emp{
  height:100%;
  background:rgba(255,255,255,.32);
  border-radius:var(--pgm-radius-micro);
  transition:width .35s ease;
  width:100%;
}
.pgm-cost-sim__bar-fill--agent{
  height:100%;
  border-radius:var(--pgm-radius-micro);
  transition:width .35s ease;
  background:linear-gradient(90deg,#38bdf8 0%,#7dd3fc 100%);
  box-shadow:0 0 0 1px rgba(255,255,255,.12) inset;
}
.pgm-cost-sim__bar-val{
  min-width:92px;
  text-align:right;
  font-size:13px!important;
  font-weight:600;
}
.pgm-cost-sim__bar-val--emp{color:rgba(255,255,255,.72)!important}
.pgm-cost-sim__bar-val--agent{color:#e0f2fe!important}
.pgm-cost-sim__cta-wrap{
  text-align:center;
  margin-top:20px;
}
a.button.pgm-cost-sim__cta,
.button.pgm-cost-sim__cta{
  display:inline-flex!important;
  align-items:center;
  gap:10px;
  background:#fff!important;
  color:#1c2539!important;
  border:1px solid #fff!important;
  border-radius:999px!important;
  padding:12px 22px!important;
  font-weight:600!important;
  font-size:14px!important;
  line-height:1.2!important;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}
a.button.pgm-cost-sim__cta:hover,
.button.pgm-cost-sim__cta:hover{
  background:#f1f5f9!important;
  color:#0f172a!important;
}
.pgm-cost-sim__cta .svg-wrapper{
  background:#1c2539!important;
  color:#fff!important;
  min-width:32px!important;
  height:32px!important;
}
.pgm-cost-sim__cta:hover .svg-wrapper{
  background:#0f172a!important;
}
.pgm-cost-sim__cta .svg-wrapper .icon-20 path{fill:currentColor!important}
@media (max-width:575px){
  .pgm-cost-sim__bar-label{min-width:76px;font-size:12px!important}
  .pgm-cost-sim__bar-val{min-width:86px;font-size:12px!important}
}

/* —— Pages guides AEO (hub + piliers + secteurs) : même colonne de lecture que le bandeau CTA —— */
main.pgm-aeo-guide .pgm-section .container-fluid,
main.pgm-aeo-guide .pgm-breadcrumb .container-fluid{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  padding-left:calc(12px + env(safe-area-inset-left));
  padding-right:calc(12px + env(safe-area-inset-right));
}
@media (min-width:1400px){
  main.pgm-aeo-guide .pgm-section .container-fluid,
  main.pgm-aeo-guide .pgm-breadcrumb .container-fluid{
    max-width:1200px;
  }
}

/* Titres de section : hub (text-40) aligné visuellement sur les piliers (text-50) */
main.pgm-aeo-guide .pgm-section h2.heading.text-40{
  font-size:clamp(28px,3.45vw,44px);
  line-height:1.12;
  letter-spacing:-.03em;
}

/* Listes « text-lists » : séparateurs légers (hub secteurs + corps de page) */
main.pgm-aeo-guide .text-lists.list-unstyled > .text-item:not(:last-child){
  padding-bottom:14px;
  margin-bottom:14px;
  border-bottom:1px solid rgba(28,37,57,.07);
}

/* —— Thème Consulo : cartes / listes avec classe .radius18 → même échelle que les cartes PGM —— */
body.pgm-home .card-project.radius18,
body.pgm-inner .card-project.radius18{
  border-radius:var(--pgm-radius-card)!important;
}
body.pgm-home .our-services .service-list.radius18{
  border-radius:var(--pgm-radius-card)!important;
}

/* —— Liens internes (corps de page) : remplace le bleu navigateur par la palette PGM —— */
body.pgm-inner main a[href]:where(
    :not(.button):not([class*="button--"]):not(.pgm-panel):not(.card-blog-bottom):not(.card-team):not(.pagination-link):not(.pgm-cta-strip__button)
  ),
body.pgm-home main a[href]:where(
    :not(.button):not([class*="button--"]):not(.pgm-panel):not(.card-blog-bottom):not(.card-team):not(.pagination-link):not(.pgm-cta-strip__button)
  ){
  color:#24324a;
  text-decoration:none;
  border-bottom:1px solid rgba(28,37,57,.22);
  transition:color .15s ease,border-color .15s ease,background-color .15s ease;
}
body.pgm-inner main a[href]:where(
    :not(.button):not([class*="button--"]):not(.pgm-panel):not(.card-blog-bottom):not(.card-team):not(.pagination-link):not(.pgm-cta-strip__button)
  ):hover,
body.pgm-home main a[href]:where(
    :not(.button):not([class*="button--"]):not(.pgm-panel):not(.card-blog-bottom):not(.card-team):not(.pagination-link):not(.pgm-cta-strip__button)
  ):hover{
  color:#0f172a;
  border-bottom-color:rgba(28,37,57,.48);
}
body.pgm-inner main a[href]:where(
    :not(.button):not([class*="button--"]):not(.pgm-panel):not(.card-blog-bottom):not(.card-team):not(.pagination-link):not(.pgm-cta-strip__button)
  ):focus-visible,
body.pgm-home main a[href]:where(
    :not(.button):not([class*="button--"]):not(.pgm-panel):not(.card-blog-bottom):not(.card-team):not(.pagination-link):not(.pgm-cta-strip__button)
  ):focus-visible{
  outline:2px solid rgba(28,37,57,.35);
  outline-offset:3px;
  border-radius:2px;
}
/* Titres d’articles en carte : pas de filet, poids typographique */
body.pgm-inner main .card-blog-heading a[href],
body.pgm-home main .card-blog-heading a[href]{
  border-bottom:none;
  color:#1c2539;
  font-weight:600;
}
body.pgm-inner main .card-blog-heading a[href]:hover,
body.pgm-home main .card-blog-heading a[href]:hover{
  color:#0f172a;
}
