/* Actualités uniquement : aucun style du catalogue ni des pages n'est modifié. */
.vc-blog { color: #17191c; background: #fff; }
.vc-blog-wrap { max-width: 1160px; margin-inline: auto; padding-inline: 40px; }
.vc-blog-archive-header, .vc-blog-article-header {
  background: #f4f5f6; border-bottom: 1px solid #e4e6e9;
}
.vc-blog-archive-header .vc-blog-wrap { padding-top: 80px; padding-bottom: 76px; }
.vc-blog-article-header .vc-blog-wrap { padding-top: 54px; padding-bottom: 60px; }
.vc-blog-kicker { display: flex; align-items: center; gap: 12px; margin: 0 0 25px; font: 600 11px/1.5 'IBM Plex Mono', monospace; letter-spacing: .19em; text-transform: uppercase; color: #d92027; }
.vc-blog-kicker::before { content: ''; width: 28px; height: 3px; background: currentColor; }
.vc-blog-archive-header h1, .vc-blog-article-header h1 { max-width: 1000px; font: 800 clamp(38px,5vw,70px)/1.08 'Archivo', sans-serif; letter-spacing: -.035em; margin: 0 0 22px; overflow-wrap: anywhere; }
.vc-blog-archive-header p:not(.vc-blog-kicker) { max-width: 640px; margin: 0; color: #62676c; font-size: 18px; line-height: 1.65; }
.vc-blog-article-header time, .vc-blog-card time { display: block; font: 500 11px/1.5 'IBM Plex Mono', monospace; letter-spacing: .08em; color: #737981; text-transform: uppercase; }
.vc-blog-back { display: inline-block; margin: 0 0 36px; font-size: 13px; font-weight: 600; color: #595f65; }
.vc-blog-back:hover, .vc-blog-article-footer a:hover { color: #d92027; }

.vc-blog-list { padding-top: 66px; padding-bottom: 96px; }
.vc-blog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.vc-blog-card { min-width: 0; border: 1px solid #e4e6e9; display: flex; flex-direction: column; background: #fff; transition: border-color .2s, transform .2s, box-shadow .2s; }
.vc-blog-card:hover { border-color: #cbd0d5; transform: translateY(-3px); box-shadow: 0 16px 34px rgba(23,25,28,.08); }
.vc-blog-card-image { display: block; aspect-ratio: 1.45; overflow: hidden; background: #1f2226; }
.vc-blog-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.vc-blog-card:hover .vc-blog-card-image img { transform: scale(1.035); }
.vc-blog-image-fallback { display: grid; place-items: center; height: 100%; font: 800 22px/1 'Archivo', sans-serif; letter-spacing: .08em; color: #f4f5f6; }
.vc-blog-card-body { padding: 26px 25px 28px; display: flex; flex: 1; flex-direction: column; align-items: flex-start; }
.vc-blog-card h2 { font: 800 23px/1.22 'Archivo', sans-serif; letter-spacing: -.018em; margin: 13px 0 13px; }
.vc-blog-card h2 a { color: #17191c; }
.vc-blog-card h2 a:hover { color: #d92027; }
.vc-blog-card-body p { font-size: 14px; line-height: 1.68; color: #686e74; margin: 0 0 23px; }
.vc-blog-read { font-size: 13px; font-weight: 700; color: #d92027; margin-top: auto; }
.vc-blog-read:hover { color: #a9171c; }
.vc-blog .navigation.pagination { padding-top: 45px; text-align: center; }
.vc-blog .page-numbers { display: inline-flex; min-width: 40px; height: 40px; align-items: center; justify-content: center; margin: 0 3px; color: #17191c; border: 1px solid #e4e6e9; }
.vc-blog .page-numbers.current, .vc-blog .page-numbers:hover { background: #d92027; border-color: #d92027; color: #fff; }
.vc-blog-empty { padding: 55px 0; color: #686e74; }

.vc-blog-article-body { padding-top: 60px; padding-bottom: 65px; font-size: 17px; line-height: 1.8; }
.vc-blog-article-body .vc-blog-prose > :not(.wp-block-media-text):not(.wp-block-image):not(.wp-block-gallery):not(.alignwide):not(.alignfull):not(.vc-blog-pagination):not(.wp-block-columns) { max-width: 780px; margin-left: auto; margin-right: auto; }
.vc-blog-article-body p { margin-top: 0; margin-bottom: 24px; color: #454b51; }
.vc-blog-article-body > figure:first-child { margin: 0 auto 48px; }
.vc-blog-article-body .wp-block-image img { display: block; max-width: 100%; height: auto; }
.vc-blog-article-body > figure:first-child img { width: 100%; max-height: 670px; object-fit: contain; background: #f4f5f6; }
.vc-blog-article-body > figure:first-child + p { font-size: 20px; line-height: 1.7; color: #33383d; margin-bottom: 44px; }
.vc-blog-article-body h2, .vc-blog-article-body h3 { font-family: 'Archivo', sans-serif; font-weight: 800; color: #17191c; letter-spacing: -.025em; line-height: 1.2; }
.vc-blog-article-body h2 { font-size: clamp(28px,3.1vw,39px); margin-top: 64px; margin-bottom: 25px; }
.vc-blog-article-body h3 { font-size: 24px; margin-top: 38px; margin-bottom: 22px; }
.vc-blog-article-body .wp-block-heading.has-text-align-center { text-align: left; }
.vc-blog-article-body > h3:first-of-type { box-sizing: border-box; max-width: 100%; background: #17191c; color: #fff; border-left: 4px solid #d92027; padding: 30px; font-size: clamp(14px,2vw,20px); line-height: 1.8; text-align: center; letter-spacing: 0; margin: 0 auto 55px; }
.vc-blog-article-body .wp-block-media-text { display: grid; grid-template-columns: 1fr 1fr; gap: 0; align-items: stretch; margin: 64px 0; background: #f4f5f6; }
.vc-blog-article-body .wp-block-media-text__media { margin: 0; height: 100%; min-height: 360px; }
.vc-blog-article-body .wp-block-media-text__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.vc-blog-article-body .wp-block-media-text__content { align-self: center; padding: clamp(28px,4vw,60px); }
.vc-blog-article-body .wp-block-media-text__content h2 { margin: 0 0 25px; }
.vc-blog-article-body .wp-block-media-text__content p { font-size: 16px; line-height: 1.75; }
.vc-blog-article-body ul, .vc-blog-article-body ol { padding-left: 25px; color: #454b51; margin-bottom: 28px; }
.vc-blog-article-body li { margin-bottom: 11px; }
.vc-blog-article-body blockquote { border-left: 4px solid #d92027; background: #f4f5f6; padding: 27px 34px; margin-top: 46px; margin-bottom: 46px; font: 700 22px/1.5 'Archivo', sans-serif; }
.vc-blog-article-body blockquote p { margin: 0; color: #17191c; }
.vc-blog-article-body .wp-block-buttons { margin-top: 40px; margin-bottom: 36px; }
.vc-blog-article-body .wp-block-button__link { display: inline-flex; background: #d92027; color: #fff; border-radius: 0; padding: 16px 28px; font-size: 14px; font-weight: 700; }
.vc-blog-article-body .wp-block-button__link:hover { background: #a9171c; color: #fff; }
.vc-blog-article-body a:not(.wp-block-button__link) { color: #d92027; text-decoration: underline; text-underline-offset: 3px; }
.vc-blog-article-footer { border-top: 1px solid #e4e6e9; padding-top: 30px; padding-bottom: 75px; }
.vc-blog-article-footer a { color: #454b51; font-size: 14px; font-weight: 700; }

@media (max-width: 900px) {
  .vc-blog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .vc-blog-article-body .wp-block-media-text { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .vc-blog-wrap { padding-left: 20px; padding-right: 20px; }
  .vc-blog-archive-header .vc-blog-wrap { padding-top: 60px; padding-bottom: 54px; }
  .vc-blog-article-header .vc-blog-wrap { padding-top: 38px; padding-bottom: 42px; }
  .vc-blog-archive-header h1, .vc-blog-article-header h1 { font-size: clamp(34px,10vw,47px); }
  .vc-blog-grid { grid-template-columns: 1fr; }
  .vc-blog-list { padding-top: 40px; padding-bottom: 65px; }
  .vc-blog-article-body { padding-top: 35px; padding-bottom: 40px; font-size: 16px; }
  .vc-blog-article-body > figure:first-child { margin-bottom: 30px; }
  .vc-blog-article-body > figure:first-child + p { font-size: 18px; }
  .vc-blog-article-body > h3:first-of-type { padding: 25px 18px; }
  .vc-blog-article-body .wp-block-media-text, .vc-blog-article-body .wp-block-media-text.has-media-on-the-right { display: flex; flex-direction: column; margin: 42px 0; }
  .vc-blog-article-body .wp-block-media-text__media { min-height: 0; width: 100%; aspect-ratio: 1.25; }
  .vc-blog-article-body .wp-block-media-text__content { width: 100%; padding: 26px 22px; }
  .vc-blog-article-body h2 { margin-top: 45px; }
}
