.elementor-2467 .elementor-element.elementor-element-02fabea{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:64px;--padding-left:5%;--padding-right:5%;}.elementor-2467 .elementor-element.elementor-element-f3e52fc{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-2467 .elementor-element.elementor-element-c673a87{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;--border-radius:16px 16px 16px 16px;--margin-top:0px;--margin-bottom:24px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2467 .elementor-element.elementor-element-c673a87:not(.elementor-motion-effects-element-type-background), .elementor-2467 .elementor-element.elementor-element-c673a87 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-2467 .elementor-element.elementor-element-770ff60{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--flex-wrap:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2467 .elementor-element.elementor-element-770ff60.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-2467 .elementor-element.elementor-element-5d93a42 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2467 .elementor-element.elementor-element-5d93a42{text-align:start;}.elementor-2467 .elementor-element.elementor-element-5d93a42 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:48px;font-weight:600;line-height:120%;letter-spacing:-1.12px;color:var( --e-global-color-c53251c );}.elementor-2467 .elementor-element.elementor-element-2ab6571{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-2467 .elementor-element.elementor-element-2ab6571 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2467 .elementor-element.elementor-element-2ab6571 img{border-style:none;border-radius:12px 12px 12px 12px;}.elementor-2467 .elementor-element.elementor-element-4afabaf{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:flex-start;--gap:64px 64px;--row-gap:64px;--column-gap:64px;border-style:none;--border-style:none;--border-radius:16px 16px 16px 16px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2467 .elementor-element.elementor-element-5646854{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}@media(max-width:1024px){.elementor-2467 .elementor-element.elementor-element-02fabea{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:28px 28px;--row-gap:28px;--column-gap:28px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:24px;--padding-bottom:48px;--padding-left:5%;--padding-right:5%;}.elementor-2467 .elementor-element.elementor-element-c673a87{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:64px 64px;--row-gap:64px;--column-gap:64px;}.elementor-2467 .elementor-element.elementor-element-5d93a42 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-2467 .elementor-element.elementor-element-5d93a42 .elementor-heading-title{font-size:42px;letter-spacing:-1.04px;}.elementor-2467 .elementor-element.elementor-element-4afabaf{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:64px 64px;--row-gap:64px;--column-gap:64px;}}@media(max-width:767px){.elementor-2467 .elementor-element.elementor-element-02fabea{--gap:24px 24px;--row-gap:24px;--column-gap:24px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:24px;--padding-bottom:40px;--padding-left:5%;--padding-right:5%;}.elementor-2467 .elementor-element.elementor-element-c673a87{--gap:48px 48px;--row-gap:48px;--column-gap:48px;}.elementor-2467 .elementor-element.elementor-element-5d93a42 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-2467 .elementor-element.elementor-element-5d93a42{text-align:start;}.elementor-2467 .elementor-element.elementor-element-5d93a42 .elementor-heading-title{font-size:32px;letter-spacing:-0.8px;}.elementor-2467 .elementor-element.elementor-element-4afabaf{--gap:48px 48px;--row-gap:48px;--column-gap:48px;}}@media(min-width:768px){.elementor-2467 .elementor-element.elementor-element-02fabea{--content-width:1312px;}.elementor-2467 .elementor-element.elementor-element-770ff60{--width:100%;}.elementor-2467 .elementor-element.elementor-element-4afabaf{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2467 .elementor-element.elementor-element-770ff60{--width:100%;}}/* Start custom CSS for theme-post-content, class: .elementor-element-5646854 *//* JPA Consultants — contenu éditorial Gutenberg
 * Remplacer le CSS existant dans Elementor > widget Contenu de publication
 * > Avancé > CSS personnalisé. Ne pas coller tel quel dans Custom Code :
 * « .elementor-2467 .elementor-element.elementor-element-5646854 » est un raccourci propre au champ CSS personnalisé Elementor.
 * Les réglages explicites des blocs restent prioritaires grâce à :where().
 */

.elementor-2467 .elementor-element.elementor-element-5646854 {
  --jpa-ink: #04314d;
  --jpa-text: #064d74;
  --jpa-muted: #45677b;
  --jpa-link: #0077a3;
  --jpa-blue: var(--e-global-color-primary, #009fe3);
  --jpa-blue-end: var(--e-global-color-4c2a829, #008ad4);
  --jpa-soft: #eff9ff;
  --jpa-line: #d8e8f0;
  --jpa-radius: 12px;
  color: var(--jpa-text);
  font-family: "Inter", sans-serif;
  font-size: clamp(1rem, .96rem + .2vw, 1.125rem);
  line-height: 1.8;
  overflow-wrap: anywhere;
}

.elementor-2467 .elementor-element.elementor-element-5646854 :where(*, *::before, *::after) { box-sizing: border-box; }
.elementor-2467 .elementor-element.elementor-element-5646854 ::selection { color: var(--jpa-ink); background: #b6e8ff; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(p, ul, ol, dl, figure, blockquote, pre, table) {
  margin-block: 0 1.4em;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(p, li, dt, dd) { line-height: inherit; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(p) { text-wrap: pretty; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(strong, b) { font-weight: 700; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(small, figcaption, cite) { font-size: .875em; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(abbr[title]) {
  text-decoration: underline dotted;
  text-underline-offset: .2em;
  cursor: help;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(mark) { color: var(--jpa-ink); background: #def2ff; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(sup, sub) { font-size: .75em; }

/* Hiérarchie et rythme : un titre reste proche du texte qu'il introduit. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h1, h2, h3, h4, h5, h6) {
  color: var(--jpa-ink);
  font-family: inherit;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.02em;
  text-wrap: balance;
  margin-block: 1.8em .65em;
  scroll-margin-block-start: 8rem;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h1) { font-size: clamp(2rem, 1.4rem + 2vw, 3rem); }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h2) { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h3) { font-size: clamp(1.25rem, 1.08rem + .6vw, 1.5rem); }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h4) { font-size: 1.125rem; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h5) { font-size: 1rem; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h6) { font-size: .9375rem; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(h2 + h3, h3 + h4, h4 + h5, h5 + h6) { margin-block-start: 1em; }
.elementor-2467 .elementor-element.elementor-element-5646854 > .elementor-widget-container > :first-child { margin-block-start: 0; }
.elementor-2467 .elementor-element.elementor-element-5646854 > .elementor-widget-container > :last-child { margin-block-end: 0; }

/* Liens éditoriaux : soulignement natif, y compris sur plusieurs lignes.
 * Aucun pseudo-élément global susceptible de souligner images et boutons. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(p, li, dd, blockquote, figcaption, td, th, cite) a:not(.wp-element-button):not(.wp-block-button__link) {
  color: var(--jpa-link);
  text-decoration: underline;
  text-decoration-color: #8bbdce;
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
  text-decoration-skip-ink: auto;
  transition: color .2s ease, text-decoration-color .2s ease;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(p, li, dd, blockquote, figcaption, td, th, cite) a:hover {
  color: var(--jpa-ink);
  text-decoration-color: currentColor;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(a, button, summary, input, select, textarea):focus-visible {
  outline: 2px solid var(--jpa-ink);
  outline-offset: 4px;
}

/* Listes, listes imbriquées et définitions. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(ul, ol):not(.wp-block-social-links) { padding-inline-start: 1.5em; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(li + li) { margin-block-start: .5em; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(li)::marker { color: var(--jpa-link); font-weight: 600; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(li > ul, li > ol) { margin-block: .65em .25em; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(li > p) { margin-block-end: .5em; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(dt) { color: var(--jpa-ink); font-weight: 700; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(dd) { margin-inline-start: 1.25em; margin-block-end: 1em; }

/* Citations : traitement éditorial sobre, sans barre latérale épaisse. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(blockquote, .wp-block-pullquote) {
  background: var(--jpa-soft);
  border: 1px solid var(--jpa-line);
  border-radius: var(--jpa-radius);
  padding: clamp(1.25rem, 3vw, 2rem);
  margin-inline: 0;
  margin-block: 2rem;
  color: var(--jpa-ink);
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(blockquote p) { font-size: 1.1em; line-height: 1.65; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(blockquote > :last-child) { margin-block-end: 0; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(blockquote cite, .wp-block-pullquote cite) {
  display: block;
  margin-block-start: 1rem;
  color: var(--jpa-muted);
  font-style: normal;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-pullquote blockquote) {
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;
}

/* Images et médias : les liens englobants et les galeries restent intacts. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(img, video) { max-width: 100%; height: auto; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-image, .wp-block-gallery, .wp-block-video, .wp-block-embed) {
  margin-block: 2rem;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-image img, .wp-block-video video) {
  display: block;
  border-radius: var(--jpa-radius);
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-image.is-style-rounded img) { border-radius: 9999px; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-gallery .wp-block-image) { margin: 0; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(figcaption, .wp-element-caption) {
  margin-block: .75rem 0;
  color: var(--jpa-muted);
  line-height: 1.55;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(audio, iframe) { max-width: 100%; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-image.aligncenter img) { margin-inline: auto; }

/* Tableaux : le défilement reste limité au bloc sur petits écrans. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-table) {
  max-width: 100%;
  overflow-x: auto;
  margin-block: 2rem;
  border: 1px solid var(--jpa-line);
  border-radius: var(--jpa-radius);
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(table) {
  width: 100%;
  border-collapse: collapse;
  font-size: .9375em;
  line-height: 1.6;
  font-variant-numeric: tabular-nums;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-table table) { margin: 0; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(th, td) {
  padding: .9rem 1.1rem;
  border: 0;
  border-block-end: 1px solid var(--jpa-line);
  vertical-align: top;
  text-align: start;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(th) { background: var(--jpa-soft); color: var(--jpa-ink); font-weight: 600; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(tbody tr:last-child td) { border-block-end: 0; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-table.is-style-stripes tbody tr:nth-child(odd)) { background: #f6fbfe; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-table figcaption) { padding: 0 1rem 1rem; }

/* Boutons : valeurs relevées sur « Nous contacter » dans le header JPA. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-buttons) { gap: .75rem; margin-block: 1.75rem 2rem; }
.elementor-2467 .elementor-element.elementor-element-5646854 .wp-block-button .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  padding: 8px 18px;
  border: 0;
  border-radius: 8px;
  background-color: transparent;
  background-image: linear-gradient(180deg, var(--jpa-blue) 0%, var(--jpa-blue-end) 100%);
  color: #fff;
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  transition: background-color .2s ease, color .2s ease;
}
.elementor-2467 .elementor-element.elementor-element-5646854 .wp-block-button .wp-block-button__link:hover,
.elementor-2467 .elementor-element.elementor-element-5646854 .wp-block-button .wp-block-button__link:focus {
  background-image: linear-gradient(180deg, #009fe3d6 0%, var(--jpa-blue-end) 100%);
  color: #fff;
}
.elementor-2467 .elementor-element.elementor-element-5646854 .wp-block-button.is-style-outline .wp-block-button__link {
  border: 1px solid var(--jpa-link);
  background: transparent;
  color: var(--jpa-link);
}
.elementor-2467 .elementor-element.elementor-element-5646854 .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--jpa-soft);
  color: var(--jpa-ink);
}

/* Code, préformatage, séparateurs et blocs Détails. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(code, kbd, samp, pre) {
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: .875em;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(p code, li code, td code) {
  padding: .12em .35em;
  border-radius: 4px;
  background: var(--jpa-soft);
  color: var(--jpa-ink);
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(pre) {
  max-width: 100%;
  overflow-x: auto;
  padding: 1.25rem;
  border: 1px solid var(--jpa-line);
  border-radius: var(--jpa-radius);
  background: #f6fbfe;
  line-height: 1.7;
  white-space: pre;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(pre code) { font-size: inherit; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(hr, .wp-block-separator:not(.is-style-dots)) {
  border: 0;
  border-block-start: 1px solid var(--jpa-line);
  margin-block: 2.5rem;
  background: transparent;
  height: 0;
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-separator.is-style-wide) { width: 100%; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-details) {
  margin-block: 1rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid var(--jpa-line);
  border-radius: var(--jpa-radius);
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-details summary) { color: var(--jpa-ink); font-weight: 600; cursor: pointer; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-details[open] summary) { margin-block-end: 1rem; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-details > :last-child:not(summary)) { margin-block-end: 0; }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-column) { min-width: 0; }

/* Options éditoriales : classe à ajouter au bloc, uniquement si nécessaire. */
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.jpa-intro) { font-size: 1.125em; line-height: 1.7; color: var(--jpa-ink); }
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.jpa-note) {
  padding: 1.25rem;
  background: var(--jpa-soft);
  border: 1px solid var(--jpa-line);
  border-radius: var(--jpa-radius);
}
.elementor-2467 .elementor-element.elementor-element-5646854 :where(.jpa-sources) { font-size: .875em; color: var(--jpa-muted); }

@media (max-width: 1024px) {
  .elementor-2467 .elementor-element.elementor-element-5646854 .wp-block-button .wp-block-button__link { padding: 10px 18px; }
}
@media (max-width: 767px) {
  .elementor-2467 .elementor-element.elementor-element-5646854 { line-height: 1.75; }
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(th, td) { padding: .75rem; }
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-image.alignleft, .wp-block-image.alignright) {
    float: none;
    margin-inline: 0;
    max-width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(a, button) { transition: none !important; }
}
@media print {
  .elementor-2467 .elementor-element.elementor-element-5646854 { color: #000; font-size: 11pt; }
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(h1, h2, h3, h4, h5, h6) { break-after: avoid; }
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(p, li) { orphans: 3; widows: 3; }
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(figure, blockquote, tr) { break-inside: avoid; }
  .elementor-2467 .elementor-element.elementor-element-5646854 :where(.wp-block-table, pre) { overflow: visible; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-02fabea */.elementor-2467 .elementor-element.elementor-element-02fabea .jpa-article-hero{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:56px!important;align-items:center;} .elementor-2467 .elementor-element.elementor-element-02fabea .jpa-article-hero-copy{width:100%!important;min-width:0;} @media(max-width:1024px){.elementor-2467 .elementor-element.elementor-element-02fabea .jpa-article-hero{grid-template-columns:1fr;gap:28px!important;}}/* End custom CSS */