/*
Theme Name: AFO
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Média Animation
Author URI: https://www.kadencewp.com/
Description: A child theme for the Kadence Theme.
Version: 1.0.1
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: afo
*/
/* Test Prod*/
/* Petit reset de base */

div#primary.content-area { margin-top:0; }

header img.custom-logo{
  max-width:175px;
}
@media(min-width:768px) {
  header .logo img{
    max-width:175px;
  }
}

blockquote.wp-block-quote {
    padding-left: 1em;
    border-left: 4px solid var(--global-palette1)!important;
}
.single-content .wp-block-pullquote blockquote::before {
  font-size: 200px;
  line-height: 40px;
  font-family: sans-serif;
  color: var(--global-palette1);
  z-index: 0;
  position: absolute;
  left: 35px;
  content: open-quote;
  top: 80px;
}
.single-content .wp-block-pullquote blockquote p {
 color: var(--global-palette1);
}
span.page-numbers.dots {
  border:none!important;
}
figure {
  margin-top:0px!important;
  margin-bottom: 0px!important;
  padding-top:0px!important;
  padding-bottom: 0px!important;
}
.single-content figure {
  margin-top:unset!important;
  margin-bottom:var(--global-md-spacing)!important;
  padding-top:unset!important;
  padding-bottom: unset!important;
}
.single-content .wp-block-button .wp-element-button {
  background-color: var(--global-palette1)!important;
  color: var(--global-palette9)!important;
  box-shadow:none;
  padding: 15px 50px 15px 50px;
  font-size: 20px;
  font-weight: 600;
  line-height:28px;
  border: 2px solid var(--global-palette1);
}
.single-content .wp-block-button .wp-element-button:hover {
  background-color: var(--global-palette2)!important;
  color: var(--global-palette9)!important;
  border: 2px solid var(--global-palette2);
}
.single-content .wp-block-button.is-style-outline .wp-element-button {
  background-color: var(--global-palette9)!important;
  color: var(--global-palette1)!important;
  box-shadow:none;
  padding: 15px 50px 15px 50px;
  font-size: 20px;
  font-weight: 600;
  line-height:28px;
}
.single-content .wp-block-button.is-style-outline .wp-element-button:hover {
  background-color: var(--global-palette1)!important;
  color: var(--global-palette9)!important;
}
/* =========================================================
   AFO – core/button style: "FILE" 
   Appliqué quand: .wp-block-button.is-style-contour-fleche
   ========================================================= */

.wp-block-file{
  /* variables (fallbacks) */
  --afo-purple: var(--global-palette2, #33224d);
  --afo-pink:   var(--global-palette1, #e6007e);
  --afo-font:   'BBB Poppins TN Display', Helvetica, Arial, sans-serif;
    gap: 10px;
    display: flex;
    align-items: center;
}

/* Le lien du bouton */
  .wp-block-file > .wp-block-file__button{
  background-color: #fff!important;
  border: 2px solid var(--global-palette1);
  border-radius: 80px;
  padding: 15px 50px 15px 50px;
  margin: 0;
  color: var(--global-palette1)!important;
  font-family: var(--afo-font);
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  text-decoration: none;
  transition:
    background-color .18s ease,
    color .18s ease,
    border-color .18s ease;
}

/* Flèche à droite (SVG = celui que tu as donné, recoloré via mask) */
  .wp-block-file > .wp-block-file__button::after{
  content: "";
  width: 1em;
  height: 1em;
  /*flex: 0 0 26px;*/

  /* couleur flèche en normal */
  background-color: var(--global-palette2);

  /*  SVG (viewBox 0 0 26 15) */
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTUgMTcnIGZpbGw9J2N1cnJlbnRDb2xvcicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PHBhdGggZD0nTTYuNjU3MTUgMTYuNzA3MUM3LjA0NzY4IDE3LjA5NzYgNy42ODA4NCAxNy4wOTc2IDguMDcxMzYgMTYuNzA3MUwxNC40MzUzIDEwLjM0MzFDMTQuODI1OSA5Ljk1MjYyIDE0LjgyNTkgOS4zMTk0NiAxNC40MzUzIDguOTI4OTNDMTQuMDQ0OCA4LjUzODQxIDEzLjQxMTYgOC41Mzg0MSAxMy4wMjExIDguOTI4OTNMNy4zNjQyNiAxNC41ODU4TDEuNzA3NCA4LjkyODkzQzEuMzE2ODggOC41Mzg0MSAwLjY4MzcxNCA4LjUzODQxIDAuMjkzMTkgOC45Mjg5M0MtMC4wOTczMzQ0IDkuMzE5NDYgLTAuMDk3MzM0NCA5Ljk1MjYyIDAuMjkzMTkgMTAuMzQzMUw2LjY1NzE1IDE2LjcwNzFaTTcuMzY0MjYgMEw2LjM2NDI2IDBMNi4zNjQyNiAxNkg3LjM2NDI2SDguMzY0MjZWMEw3LjM2NDI2IDBaJz48L3BhdGg+PC9zdmc+");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTUgMTcnIGZpbGw9J2N1cnJlbnRDb2xvcicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PHBhdGggZD0nTTYuNjU3MTUgMTYuNzA3MUM3LjA0NzY4IDE3LjA5NzYgNy42ODA4NCAxNy4wOTc2IDguMDcxMzYgMTYuNzA3MUwxNC40MzUzIDEwLjM0MzFDMTQuODI1OSA5Ljk1MjYyIDE0LjgyNTkgOS4zMTk0NiAxNC40MzUzIDguOTI4OTNDMTQuMDQ0OCA4LjUzODQxIDEzLjQxMTYgOC41Mzg0MSAxMy4wMjExIDguOTI4OTNMNy4zNjQyNiAxNC41ODU4TDEuNzA3NCA4LjkyODkzQzEuMzE2ODggOC41Mzg0MSAwLjY4MzcxNCA4LjUzODQxIDAuMjkzMTkgOC45Mjg5M0MtMC4wOTczMzQ0IDkuMzE5NDYgLTAuMDk3MzM0NCA5Ljk1MjYyIDAuMjkzMTkgMTAuMzQzMUw2LjY1NzE1IDE2LjcwNzFaTTcuMzY0MjYgMEw2LjM2NDI2IDBMNi4zNjQyNiAxNkg3LjM2NDI2SDguMzY0MjZWMEw3LjM2NDI2IDBaJz48L3BhdGg+PC9zdmc+");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  transition: background-color .18s ease, transform .18s ease;
}

/* Hover + focus visible: plein violet + texte blanc */
  .wp-block-file > .wp-block-file__button:hover,
  .wp-block-file > .wp-block-file__button:focus-visible{
  background-color:  var(--global-palette1)!important;
  border-color:  var(--global-palette1)!important;
  color: #fff!important;
  box-shadow:none!important;
}

/* Flèche en hover: blanche (même couleur que texte) + petit nudge */
  .wp-block-file > .wp-block-file__button:hover::after,
  .wp-block-file > .wp-block-file__button:focus-visible::after{
  background-color: var(--global-palette9);
  transform: translateX(2px);
}

/* Focus clavier (WCAG) */
.wp-block-file > .wp-block-file__button:focus-visible{
  outline: 3px solid var(--afo-pink);
  outline-offset: 3px;
}

/* Prefers reduced motion */
@media (prefers-reduced-motion: reduce){
  .wp-block-file > .wp-block-file__button,
  .wp-block-file > .wp-block-file__button::after{
    transition: none;
  }
}
/* Utilitaires génériques (raccourcis que je réutilise partout) */
.r-o, .sr-only {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: .0625rem !important;
  margin: -.0625rem !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: .0625rem !important;
}
.pos-relative{ position: relative; }
.pos-absolute{ position: absolute; }
.p-0 { padding:0!important; }
.m-0 { margin:0px; }
.cut40 {
   --cut: 40px;
  position: relative;
  overflow: hidden;
  clip-path: polygon(
    0 0, 100% 0,
    100% calc(100% - var(--cut)),
    calc(100% - var(--cut)) 100%,
    0 100%
  );
}
.cut20 {
   --cut: 20px;
  position: relative;
  overflow: hidden;
  clip-path: polygon(
    0 0, 100% 0,
    100% calc(100% - var(--cut)),
    calc(100% - var(--cut)) 100%,
    0 100%
  );
}
.border-cut{
  position: relative;
  padding: 30px;
  background: #fff;
  color: #111;
  box-sizing: border-box;
  border: 1px solid transparent;

  /* cadre SVG avec coin coupé */
  border-image-source: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20681%20830'%3E%3Cpath%20d='M0.5%200.5H680.5V774.397L625.72%20829.5H0.5Z'%20fill='none'%20stroke='%232a114a'%20stroke-width='1'%20stroke-opacity='0.4'/%3E%3C/svg%3E");
  border-image-slice: 60 fill;
  border-image-width: 50;
  border-image-repeat: stretch;

  border-radius: 18px;
}

/* Hoax Menu 1024 -> 1280 px */
 .wp-block-kadence-off-canvas-trigger svg {
        width: 40px!important;
        height: 40px!important;
}
.wp-block-kadence-off-canvas-trigger {
    margin: 0;
    padding: var(--global-kb-spacing-xxs, 0.5rem);
    color: currentColor;
    background: none;
    border: none;
    border-radius: 0;
    cursor: pointer;
    display: flex;
    overflow: auto;
    box-shadow: none;
    
    color: var(--global-palette9, #ffffff)!important;
}
.wp-block-kadence-header .kb-header-container {
  padding-top: var(--global-kb-spacing-xs, 1rem)!important;
  padding-bottom: var(--global-kb-spacing-xs, 1rem)!important;
}
/* =========================================================
   Kadence Navigation — dernier item en bouton
   (on force une hauteur via min-height/padding)
========================================================= */

.menu-principal-concours .menu-container > ul.menu > li.menu-item:last-child,
.menu-principal-festival .menu-container > ul.menu > li.menu-item:last-child{
  display: flex;
  align-items: stretch;
}

/* wrapper full */
.menu-principal-concours .menu-container > ul.menu > li.menu-item:last-child > .kb-link-wrap,
.menu-principal-festival .menu-container > ul.menu > li.menu-item:last-child > .kb-link-wrap{
  display: flex;
  align-items: stretch;
}

/* le "bouton" */
.menu-principal-concours .menu-container > ul.menu > li.menu-item:last-child > .kb-link-wrap > a.kb-nav-link-content,
.menu-principal-festival .menu-container > ul.menu > li.menu-item:last-child > .kb-link-wrap > a.kb-nav-link-content{
  display: inline-flex !important;         /* inline-flex = bouton naturel */
  align-items: center !important;
  justify-content: center !important;

  /* ✅ ICI: on crée la hauteur réelle */
  min-height: 70px;                       /* ajuste (48-60 selon ton design) */
  padding: 0 22px !important;              /* padding horizontal */
  padding-top: 0 !important;
  padding-bottom: 0 !important;

  width: 100% !important;                  /* si tu veux qu’il prenne toute la largeur du li */
}

/* optionnel : si tu veux que le li s'adapte à la largeur du bouton et pas 100% */
.menu-principal-concours .menu-container > ul.menu > li.menu-item:last-child,
.menu-principal-festival .menu-container > ul.menu > li.menu-item:last-child{
  width: auto;
}


/*--------------- Single Projection -----*/
@media (min-width:590px) {
  .single-projection ul.thematique-projection::before {
    display: inline-block;
    content:', ';
    width:10px;
    height:10px;
  }
}

.single-projection .edition-categories .wp-block-group.is-horizontal {
  gap:0;
}
/* ===== AFO – Layout Recherche (barre de recherche + filtres + cards) ===== */
/* Wrapper que je mets autour de .afo-searchbar-block et .afo-advanced-filters */
.afo-search-layout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
  gap:32px;
  align-items:flex-start;
  margin-bottom:32px;
}

/* < 1024px :
   – la barre de recherche prend toute la largeur
   – les filtres passent en dessous
   – ensuite viennent les cards
*/
@media (max-width:1024px){
  .afo-search-layout{
    grid-template-columns:1fr;
    gap:24px;
  }
}

/* ----------- MENU (bouton spécial dernière entrée) ---------------*/
/* Je cible UNIQUEMENT le dernier item du menu principal */
.menu-principal .menu-container ul.kb-navigation > li:last-child .kb-link-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  /*padding: 10px 28px 10px 15px;*/
  background: #ffffff;
  border-radius: 100px;
  color:var(--global-palette1);
  border: 2px solid var(--global-palette1);
  line-height:0;
}

/* Petite icône en before sur le lien du menu */
.menu-principal-concours .menu-container ul.kb-navigation > li:last-child a.kb-nav-link-content::before,
.menu-principal-festival .menu-container ul.kb-navigation > li:last-child a.kb-nav-link-content::before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 32px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-right: 12px;
  margin-top:-4px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNDAnIGhlaWdodD0nMzknIHZpZXdCb3g9JzAgMCA0MCAzOScgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTguNCAxMi40MzEzTDI1LjQgMC43MzEyNUMyOC40MzMzIDEuNTExMjUgMzEuMTI1MyAyLjk0MTI1IDMzLjQ3NiA1LjAyMTI1QzM1LjgyNjcgNy4xMDEyNSAzNy41MzQ2IDkuNTcxMjUgMzguNiAxMi40MzEzSDE4LjRaTTEyLjg1IDE3LjMwNjJMNi4wMDAwMiA1LjYwNjI1QzcuODAwMDEgMy44ODM3NSA5Ljg5MjAxIDIuNTE4NzUgMTIuMjc2IDEuNTExMjVDMTQuNjYgMC41MDM3NSAxNy4yMzQ3IDAgMjAgMEMyMC40MzMzIDAgMjAuOTMzMyAwLjAyNDcwMDIgMjEuNSAwLjA3NDEwMDJDMjIuMDY2NyAwLjEyMzUgMjIuNTgzMyAwLjE4MDA1IDIzLjA1IDAuMjQzNzVMMTIuODUgMTcuMzA2MlpNMC42NTAwMjIgMjQuMzc1QzAuNDUwMDIyIDIzLjU5NSAwLjI5MTM1NSAyMi43OTg3IDAuMTc0MDIyIDIxLjk4NjJDMC4wNTY2ODg5IDIxLjE3MzcgLTAuMDAxMzEwODYgMjAuMzQ1IDIuMjQ3MmUtMDUgMTkuNUMyLjI0NzJlLTA1IDE3LjE5MjUgMC4zODMzNTYgMTUuMDE1IDEuMTUwMDIgMTIuOTY3NUMxLjkxNjY5IDEwLjkyIDMuMDAwMDIgOS4wNTEyNSA0LjQwMDAyIDcuMzYxMjVMMTQuNSAyNC4zNzVIMC42NTAwMjJaTTE0LjY1IDM4LjI2ODdDMTEuNjE2NyAzNy40ODg4IDguOTE2NjggMzYuMDU4OCA2LjU1MDAxIDMzLjk3ODdDNC4xODMzNSAzMS44OTg3IDIuNDY2NjkgMjkuNDI4OCAxLjQwMDAyIDI2LjU2ODhIMjEuNTVMMTQuNjUgMzguMjY4N1pNMjAgMzlDMTkuNSAzOSAxOC45OTEzIDM4Ljk2NzUgMTguNDc0IDM4LjkwMjVDMTcuOTU2NyAzOC44Mzc1IDE3LjQ2NTMgMzguNzcyNSAxNyAzOC43MDc1TDI3LjE1IDIxLjY5MzhMMzQgMzMuMzkzN0MzMi4yIDM1LjExNjIgMzAuMTA4NyAzNi40ODEzIDI3LjcyNiAzNy40ODg4QzI1LjM0MzMgMzguNDk2MyAyMi43NjggMzkgMjAgMzlaTTM1LjYgMzEuNjM4OEwyNS41IDE0LjYyNUgzOS4zNUMzOS41NSAxNS40MDUgMzkuNzA4NiAxNi4yMDEzIDM5LjgyNiAxNy4wMTM4QzM5Ljk0MzMgMTcuODI2MyA0MC4wMDEzIDE4LjY1NSA0MCAxOS41QzQwIDIxLjc3NSAzOS41OTIgMjMuOTUyNSAzOC43NzYgMjYuMDMyNUMzNy45NiAyOC4xMTI1IDM2LjkwMTMgMjkuOTgxMyAzNS42IDMxLjYzODhaJyBmaWxsPScjMzMyMjREJy8+PC9zdmc+IA==");
}
.menu-principal-festival .menu-container ul.kb-navigation > li:last-child a.kb-nav-link-content::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNDAnIGhlaWdodD0nNDAnIHZpZXdCb3g9JzAgMCA0MCA0MCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNNi42NjY3NSAyNUgxMC4wMDAxQzEwLjg4NDEgMjUgMTEuNzMyIDI1LjM1MTIgMTIuMzU3MSAyNS45NzYzQzEyLjk4MjIgMjYuNjAxNCAxMy4zMzM0IDI3LjQ0OTMgMTMuMzMzNCAyOC4zMzMzVjMxLjY2NjdIMTUuMDAwMVYyOC4zMzMzQzE1LjAwMDEgMjcuNDQ5MyAxNS4zNTEzIDI2LjYwMTQgMTUuOTc2NCAyNS45NzYzQzE2LjYwMTUgMjUuMzUxMiAxNy40NDk0IDI1IDE4LjMzMzQgMjVIMjEuNjY2N0MyMi41NTA4IDI1IDIzLjM5ODYgMjUuMzUxMiAyNC4wMjM4IDI1Ljk3NjNDMjQuNjQ4OSAyNi42MDE0IDI1LjAwMDEgMjcuNDQ5MyAyNS4wMDAxIDI4LjMzMzNWMzEuNjY2N0gyNi42NjY3VjI4LjMzMzNDMjYuNjY2NyAyNy40NDkzIDI3LjAxNzkgMjYuNjAxNCAyNy42NDMxIDI1Ljk3NjNDMjguMjY4MiAyNS4zNTEyIDI5LjExNiAyNSAzMC4wMDAxIDI1SDMzLjMzMzRDMzQuMjE3NSAyNSAzNS4wNjUzIDI1LjM1MTIgMzUuNjkwNCAyNS45NzYzQzM2LjMxNTYgMjYuNjAxNCAzNi42NjY3IDI3LjQ0OTMgMzYuNjY2NyAyOC4zMzMzVjMxLjY2NjdIMzguMzMzNFYzNi42NjY3SDEuNjY2NzVWMzEuNjY2N0gzLjMzMzQxVjI4LjMzMzNDMy4zMzM0MSAyNy40NDkzIDMuNjg0NiAyNi42MDE0IDQuMzA5NzMgMjUuOTc2M0M0LjkzNDg1IDI1LjM1MTIgNS43ODI2OSAyNSA2LjY2Njc1IDI1Wk0xOC4zMzM0IDExLjY2NjdMMjUuMDAwMSAxNi42NjY3TDE4LjMzMzQgMjEuNjY2N1YxMS42NjY3Wk02LjY2Njc1IDMuMzMzMzNIMzMuMzMzNEMzNC4yMTc1IDMuMzMzMzMgMzUuMDY1MyAzLjY4NDUyIDM1LjY5MDQgNC4zMDk2NEMzNi4zMTU2IDQuOTM0NzcgMzYuNjY2NyA1Ljc4MjYxIDM2LjY2NjcgNi42NjY2N1YyMi41NjY3QzM1LjY1NzEgMjEuOTcxNyAzNC41MDUzIDIxLjY2MDcgMzMuMzMzNCAyMS42NjY3VjYuNjY2NjdINi42NjY3NVYyMS42NjY3QzUuNDUwMDggMjEuNjY2NyA0LjMxNjc1IDIxLjk4MzMgMy4zMzM0MSAyMi41NjY3VjYuNjY2NjdDMy4zMzM0MSA1Ljc4MjYxIDMuNjg0NiA0LjkzNDc3IDQuMzA5NzMgNC4zMDk2NEM0LjkzNDg1IDMuNjg0NTIgNS43ODI2OSAzLjMzMzMzIDYuNjY2NzUgMy4zMzMzM1onIGZpbGw9JyMzMzIyNEQnLz48L3N2Zz4g");
}

/* Je retire le soulignement automatique de Kadence */
.menu-principal .menu-container ul.kb-navigation > li:last-child a.kb-nav-link-content::after {
  content:none!important;
}

.menu-principal .menu-container ul.kb-navigation > li:last-child .kb-link-wrap:hover {
  color:#fff;
  background: var(--global-palette1);
  border: 2px solid #fff;
}

.menu-principal-festival .menu-container ul.kb-navigation > li:last-child .kb-link-wrap:hover a.kb-nav-link-content::before{
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNDAnIGhlaWdodD0nNDAnIHZpZXdCb3g9JzAgMCA0MCA0MCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNNi42NjY3NSAyNUgxMC4wMDAxQzEwLjg4NDEgMjUgMTEuNzMyIDI1LjM1MTIgMTIuMzU3MSAyNS45NzYzQzEyLjk4MjIgMjYuNjAxNCAxMy4zMzM0IDI3LjQ0OTMgMTMuMzMzNCAyOC4zMzMzVjMxLjY2NjdIMTUuMDAwMVYyOC4zMzMzQzE1LjAwMDEgMjcuNDQ5MyAxNS4zNTEzIDI2LjYwMTQgMTUuOTc2NCAyNS45NzYzQzE2LjYwMTUgMjUuMzUxMiAxNy40NDk0IDI1IDE4LjMzMzQgMjVIMjEuNjY2N0MyMi41NTA4IDI1IDIzLjM5ODYgMjUuMzUxMiAyNC4wMjM4IDI1Ljk3NjNDMjQuNjQ4OSAyNi42MDE0IDI1LjAwMDEgMjcuNDQ5MyAyNS4wMDAxIDI4LjMzMzNWMzEuNjY2N0gyNi42NjY3VjI4LjMzMzNDMjYuNjY2NyAyNy40NDkzIDI3LjAxNzkgMjYuNjAxNCAyNy42NDMxIDI1Ljk3NjNDMjguMjY4MiAyNS4zNTEyIDI5LjExNiAyNSAzMC4wMDAxIDI1SDMzLjMzMzRDMzQuMjE3NSAyNSAzNS4wNjUzIDI1LjM1MTIgMzUuNjkwNCAyNS45NzYzQzM2LjMxNTYgMjYuNjAxNCAzNi42NjY3IDI3LjQ0OTMgMzYuNjY2NyAyOC4zMzMzVjMxLjY2NjdIMzguMzMzNFYzNi42NjY3SDEuNjY2NzVWMzEuNjY2N0gzLjMzMzQxVjI4LjMzMzNDMy4zMzM0MSAyNy40NDkzIDMuNjg0NiAyNi42MDE0IDQuMzA5NzMgMjUuOTc2M0M0LjkzNDg1IDI1LjM1MTIgNS43ODI2OSAyNSA2LjY2Njc1IDI1Wk0xOC4zMzM0IDExLjY2NjdMMjUuMDAwMSAxNi42NjY3TDE4LjMzMzQgMjEuNjY2N1YxMS42NjY3Wk02LjY2Njc1IDMuMzMzMzNIMzMuMzMzNEMzNC4yMTc1IDMuMzMzMzMgMzUuMDY1MyAzLjY4NDUyIDM1LjY5MDQgNC4zMDk2NEMzNi4zMTU2IDQuOTM0NzcgMzYuNjY2NyA1Ljc4MjYxIDM2LjY2NjcgNi42NjY2N1YyMi41NjY3QzM1LjY1NzEgMjEuOTcxNyAzNC41MDUzIDIxLjY2MDcgMzMuMzMzNCAyMS42NjY3VjYuNjY2NjdINi42NjY3NVYyMS42NjY3QzUuNDUwMDggMjEuNjY2NyA0LjMxNjc1IDIxLjk4MzMgMy4zMzM0MSAyMi41NjY3VjYuNjY2NjdDMy4zMzM0MSA1Ljc4MjYxIDMuNjg0NiA0LjkzNDc3IDQuMzA5NzMgNC4zMDk2NEM0LjkzNDg1IDMuNjg0NTIgNS43ODI2OSAzLjMzMzMzIDYuNjY2NzUgMy4zMzMzM1onIGZpbGw9JyNmZmYnLz48L3N2Zz4g");
}
.menu-principal-concours .menu-container ul.kb-navigation > li:last-child .kb-link-wrap:hover a.kb-nav-link-content::before{
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNDAnIGhlaWdodD0nMzknIHZpZXdCb3g9JzAgMCA0MCAzOScgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTguNCAxMi40MzEzTDI1LjQgMC43MzEyNUMyOC40MzMzIDEuNTExMjUgMzEuMTI1MyAyLjk0MTI1IDMzLjQ3NiA1LjAyMTI1QzM1LjgyNjcgNy4xMDEyNSAzNy41MzQ2IDkuNTcxMjUgMzguNiAxMi40MzEzSDE4LjRaTTEyLjg1IDE3LjMwNjJMNi4wMDAwMiA1LjYwNjI1QzcuODAwMDEgMy44ODM3NSA5Ljg5MjAxIDIuNTE4NzUgMTIuMjc2IDEuNTExMjVDMTQuNjYgMC41MDM3NSAxNy4yMzQ3IDAgMjAgMEMyMC40MzMzIDAgMjAuOTMzMyAwLjAyNDcwMDIgMjEuNSAwLjA3NDEwMDJDMjIuMDY2NyAwLjEyMzUgMjIuNTgzMyAwLjE4MDA1IDIzLjA1IDAuMjQzNzVMMTIuODUgMTcuMzA2MlpNMC42NTAwMjIgMjQuMzc1QzAuNDUwMDIyIDIzLjU5NSAwLjI5MTM1NSAyMi43OTg3IDAuMTc0MDIyIDIxLjk4NjJDMC4wNTY2ODg5IDIxLjE3MzcgLTAuMDAxMzEwODYgMjAuMzQ1IDIuMjQ3MmUtMDUgMTkuNUMyLjI0NzJlLTA1IDE3LjE5MjUgMC4zODMzNTYgMTUuMDE1IDEuMTUwMDIgMTIuOTY3NUMxLjkxNjY5IDEwLjkyIDMuMDAwMDIgOS4wNTEyNSA0LjQwMDAyIDcuMzYxMjVMMTQuNSAyNC4zNzVIMC42NTAwMjJaTTE0LjY1IDM4LjI2ODdDMTEuNjE2NyAzNy40ODg4IDguOTE2NjggMzYuMDU4OCA2LjU1MDAxIDMzLjk3ODdDNC4xODMzNSAzMS44OTg3IDIuNDY2NjkgMjkuNDI4OCAxLjQwMDAyIDI2LjU2ODhIMjEuNTVMMTQuNjUgMzguMjY4N1pNMjAgMzlDMTkuNSAzOSAxOC45OTEzIDM4Ljk2NzUgMTguNDc0IDM4LjkwMjVDMTcuOTU2NyAzOC44Mzc1IDE3LjQ2NTMgMzguNzcyNSAxNyAzOC43MDc1TDI3LjE1IDIxLjY5MzhMMzQgMzMuMzkzN0MzMi4yIDM1LjExNjIgMzAuMTA4NyAzNi40ODEzIDI3LjcyNiAzNy40ODg4QzI1LjM0MzMgMzguNDk2MyAyMi43NjggMzkgMjAgMzlaTTM1LjYgMzEuNjM4OEwyNS41IDE0LjYyNUgzOS4zNUMzOS41NSAxNS40MDUgMzkuNzA4NiAxNi4yMDEzIDM5LjgyNiAxNy4wMTM4QzM5Ljk0MzMgMTcuODI2MyA0MC4wMDEzIDE4LjY1NSA0MCAxOS41QzQwIDIxLjc3NSAzOS41OTIgMjMuOTUyNSAzOC43NzYgMjYuMDMyNUMzNy45NiAyOC4xMTI1IDM2LjkwMTMgMjkuOTgxMyAzNS42IDMxLjYzODhaJyBmaWxsPScjZmZmJy8+PC9zdmc+IA==");
}

/* ---------- AFO Grid Hero 5 : images + coin coupé + hover ---------- */
.afo-grid-hero5,
.afo-ressources-grid {
  --cut: 58px;  /* taille du coin coupé (je l’ajuste ici si besoin) */
}

/* Optionnel : variante de --cut directement sur le figure */
.afo-grid-hero5 figure.actu-thumb,
.afo-ressources-grid figure.actu-thumb,
.loop-toutes-actus figure.actu-thumb {
  --cut: 40px;
}

/* Conteneur ratio Kadence : clip-path + préparation overlay */
.afo-grid-hero5 figure.actu-thumb .kb-is-ratio-image,
.afo-ressources-grid figure.actu-thumb .kb-is-ratio-image,
.loop-toutes-actus figure.actu-thumb .kb-is-ratio-image {
  position: relative;
  overflow: hidden;
  clip-path: polygon(
    0 0, 100% 0,
    100% calc(100% - var(--cut)),
    calc(100% - var(--cut)) 100%,
    0 100%
  );
  isolation: isolate; /* pour que mix-blend-mode reste dans la carte */
}

/* L’image : rendu + animations (base commune) */
.afo-grid-hero5 figure.actu-thumb img.kb-img,
.afo-ressources-grid figure.actu-thumb img.kb-img,
.loop-toutes-actus figure.actu-thumb img.kb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform-origin: center center;
  will-change: transform;
  transition: transform .8s ease-out, filter .8s ease-out;
  z-index: 1;
}


/* Overlay violet perso en ::after, invisible par défaut */
.afo-grid-hero5 figure.actu-thumb .kb-is-ratio-image::after,
.afo-ressources-grid figure.actu-thumb .kb-is-ratio-image::after,
.loop-toutes-actus figure.actu-thumb .kb-is-ratio-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(77, 44, 122, 0.9); /* violet AFO */
  mix-blend-mode: color;                    /* comme Kadence */
  opacity: 0;
  pointer-events: none;
  transition: opacity .8s ease-out;
  z-index: 2;
}


/* Hover sur la carte entière (Query Loop Kadence) :
   - zoom
   - NB
   - voile violet via ::after + mix-blend-mode
*/
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:hover figure.actu-thumb img.kb-img,
.afo-ressources-grid ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:hover figure.actu-thumb img.kb-img,
.loop-toutes-actus ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:hover figure.actu-thumb img.kb-img {
  transform: scale(1.1);
  filter: grayscale(1);
}

.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:hover figure.actu-thumb .kb-is-ratio-image::after,
.afo-ressources-grid ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:hover figure.actu-thumb .kb-is-ratio-image::after,
.loop-toutes-actus ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:hover figure.actu-thumb .kb-is-ratio-image::after {
  opacity: 1;
}

/* Hover sur la carte : je souligne aussi le titre */
.afo-grid-hero5 ul > li:hover h3,
.afo-ressources-grid ul > li:hover h2,
.loop-toutes-actus ul > li:hover h3 {
  text-decoration: underline;
  color:var(--global-palette2)!important;
}

/* Petite animation de la flèche “Lire l’article” */
@keyframes afo-arrow-nudge {
  0% {
    transform: translateX(0);
  }
  40% {
    transform: translateX(-15px);
  }
  100% {
    transform: translateX(0);
  }
}
/* Je prépare le svg des blocs .lire-article */
.lire-article .kb-svg-icon-wrap svg {
  will-change: transform;
}

/* Cas simple : on survole directement le bloc .lire-article */
.lire-article:hover .kb-svg-icon-wrap svg {
  animation: afo-arrow-nudge 0.45s ease-out 1;
}

/* Cas Kadence avec overlay : je déclenche depuis la colonne cliquable */
.kb-section-has-link:hover .lire-article .kb-svg-icon-wrap svg {
  animation: afo-arrow-nudge 0.45s ease-out 1;
}
/* Et au survol de la carte AFO Grid Hero */
.afo-grid-hero5 li.kb-query-item:hover .lire-article .kb-svg-icon-wrap svg {
  animation: afo-arrow-nudge 0.45s ease-out 1;
}

/* ---------------- HOMEPAGE CONCOURS ---------------- */

.fleche-depot {
  transform:rotate(90deg)
}
@media(min-width:768px){
  .fleche-depot {
    transform:rotate(0deg)
  }
}

/* ===== AFO — Grille 2+3 (desktop) + CTA sticky =====
   Je cible uniquement la Query Loop avec .afo-grid-hero5
*/

/* UL transformé en vraie grille (je passe au-dessus du inline-style Kadence) */
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"]{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  grid-auto-rows:auto !important;
  grid-auto-flow:row dense !important;
  gap:28px !important;
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  columns:auto !important;
  column-gap:28px !important;
  row-gap:28px !important;
}

/* Base desktop : chaque carte = 2 colonnes (donc 3 par rangée) */
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item{
  grid-column:span 2 !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:100%;
}

/* Placement custom des 5 premières cartes */
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:nth-of-type(1){ grid-column:1 / 4 !important; grid-row:1 !important; }
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:nth-of-type(2){ grid-column:4 / 7 !important; grid-row:1 !important; }
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:nth-of-type(3){ grid-column:1 / 3 !important; grid-row:2 !important; }
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:nth-of-type(4){ grid-column:3 / 5 !important; grid-row:2 !important; }
.afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:nth-of-type(5){ grid-column:5 / 7 !important; grid-row:2 !important; }

/* ========== Structure interne Kadence : tout en flex pour coller le CTA en bas ========== */

/* Colonne racine de la carte (celle qui porte .kb-section-has-link) */
.afo-grid-hero5 .kb-section-has-link{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0;
  position:relative;
  z-index:0;
}

/* Utilitaire que je rajoute parfois à la main dans l’éditeur */
.afo-grid-hero5 .flex-1-force{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0 !important;
}

/* L’image reste en haut, ne prend pas tout le flex */
.afo-grid-hero5 figure.actu-thumb{
  flex:0 0 auto !important;
  margin:0 !important;
}

/* Je propage le flex vertical jusqu’au CTA */
.afo-grid-hero5 .kb-section-has-link > .kt-inside-inner-col,
.afo-grid-hero5 .kb-section-has-link .wp-block-kadence-column > .kt-inside-inner-col{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0;
}

/* Même logique pour les colonnes internes de rowlayout */
.afo-grid-hero5 .kb-row-layout-wrap .wp-block-kadence-column{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0;
}

/* Le bloc “Lire l’article” est poussé en bas de la carte */
.afo-grid-hero5 .kb-row-layout-wrap.lire-article{ margin-top:auto !important; }

/* Alignement propre du CTA (texte + flèche) */
.afo-grid-hero5 .kb-row-layout-wrap.lire-article .kt-row-column-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
}

/* Micro-nettoyage des espacements internes */
.afo-grid-hero5 .kb-dynamic-html{ margin-bottom:0 !important; }
.afo-grid-hero5 .wp-block-kadence-advancedheading,
.afo-grid-hero5 .kb-dynamic-html{ min-width:0; }

/* ===== Responsive ===== */

/* ≤1024 px : je passe la grille en 2 colonnes, plus de placement forcé */
@media (max-width:1024px){
  .afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"]{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:24px !important;
  }
  .afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item:nth-of-type(-n+5){
    grid-column:auto !important;
    grid-row:auto !important;
  }
  .afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"] > li.kb-query-item{
    grid-column:auto / span 1 !important;
  }
}

/* ≤560 px : 1 seule colonne, grille mobile classique */
@media (max-width:560px){
  .afo-grid-hero5 ul.kb-query-grid-wrap[data-item-selector="kb-query-item"]{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
}

/* ===== Section “section-notch” : fond dégradé + coins spéciaux ===== */
@media(min-width:768px) {
  .section-notch{
    position: relative;
    isolation: isolate;                  /* je m’assure que mon masque reste au-dessus du reste */
    color:#fff;
    background: linear-gradient(120deg,#2b1e5e,#0ea7a0 60%,#d1439a);
    --bar:    0px;                       /* épaisseur de la barre blanche en haut (0 = rien) */
    --cutTop: clamp(56px, 8vw, 160px);   /* biseau haut-gauche */
    --cutBot: clamp(56px, 8vw, 160px);   /* coin coupé bas-gauche */
    clip-path: polygon(0 0, 100% 0, 100% 100%, var(--cutBot) 100%, 0 calc(100% - var(--cutBot)), 0 0);
    border: 0 !important;
    box-shadow: none !important;
    border-top:5px solid #fff !important; /* petit “trick” pour masquer la vilaine ligne qui apparaissait */
  }

  /* Masque blanc du haut avec un trou triangulaire ↘︎ */
  .section-notch::before{
    --bg:#fff;
    content:"";
    position:absolute;
    left:-2px;
    right:-2px;
    top:-3px;
    height: calc(var(--bar) + var(--cutTop) + 6px);
    pointer-events:none;
    z-index: 10;
    transform: translateZ(0);
    backface-visibility: hidden;

    background:
      /* cap plein en haut pour tuer le hairline */
      linear-gradient(var(--bg), var(--bg)) top/100% 3px no-repeat,

      /* barre blanche (si --bar > 0) */
      linear-gradient(var(--bg), var(--bg)) top/100% var(--bar) no-repeat,

      /* rectangle à droite du triangle */
      linear-gradient(var(--bg), var(--bg))
        left calc(var(--cutTop) - .75px) top/
        calc(100% - var(--cutTop) + 1.5px) 100% no-repeat,

      /* triangle ↘︎ élargi pour limiter l’aliasing */
      linear-gradient(45deg, transparent 48%, var(--bg) 48.5%)
        left top/ calc(var(--cutTop) + 1px) 100% no-repeat;
  }

  /* Ajustements mobiles pour les tailles des découpes */
  @media (max-width: 420px){
    .section-notch{
      --cutTop: clamp(40px, 12vw, 120px);
      --cutBot: clamp(40px, 12vw, 120px);
    }
  }
  .has-dark-bg .section-notch::before{ --bg: var(--site-bg, #111); }
  /* Patch supplémentaire anti-liseré en haut */
  .section-notch{
    --bg:#fff;
    box-shadow: 0 -1px 0 var(--bg) inset;
  }
  .section-notch::before{
    top: -1px;
    height: calc(var(--bar) + var(--cutTop) + 2px);
  }

  /* Si Kadence ajoute son ::before de clearfix, je le neutralise juste ici */
  .section-notch.kt-row-layout-inner:before,
  .section-notch.kb-row-layout-wrap:before{
    display: unset;
    content:"";
    z-index: 0;
  }
  /* Bande par-dessus tout pour définitivement tuer la hairline */
  .section-notch::after{
    content:"";
    position:absolute;
    left:-2px;
    right:-2px;
    top:-2px;
    height: 4px;
    background: var(--bg, #fff);
    z-index: 9999;
    pointer-events: none;
  }

  /* J’en profite pour virer les bordures/ombres que Kadence rajoute parfois */
  .section-notch.kb-row-layout-wrap,
  .section-notch.kt-row-layout-inner{
    box-shadow: none !important;
  }
}

/* Pagination */
/* ---------- Pagination générique AFO ---------- */

.proj-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin: 24px 0 10px;
  font-size: 0; /* évite les espaces entre éléments inline-flex */
}

/* Liens de page */
.proj-pagination a {
  appearance: none;
  border: 1px solid var(--global-palette1);
  background: #ffffff;
  color: #000000;

  min-width: 44px;
  height: 44px;
  padding: 0 14px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 4px;
  cursor: pointer;

  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
}

/* Page active */
.proj-pagination a.is-active {
  background: var(--global-palette1);
  color: #ffffff;
  border-color: var(--global-palette1);
  font-weight: 700;
}

/* Ellipsis (…)
   Utilise <span class="ellipsis">…</span> */
.proj-pagination .ellipsis,
.proj-pagination .dots {
  min-width: auto;
  height: 44px;
  padding: 0 6px;
  border: 0;
  background: transparent;
  cursor: default;
  box-shadow: none;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: #000000;
}

/* Hover / focus souris */
.proj-pagination a:hover {
  background: var(--global-palette1);
  color: #ffffff;
}

/* Focus clavier fort (WCAG 2.2) */
.proj-pagination a:focus-visible {
  outline: 2px solid #000;
  outline-offset: 2px;
}

/* Responsive pagination */
@media (max-width: 480px) {
  .proj-pagination a,
  .proj-pagination .ellipsis,
  .proj-pagination .dots {
    min-width: 38px;
    height: 38px;
    padding: 0 10px;
    font-size: 16px;
    border-radius: 10px;
  }
}
/* =========================================================
   AFO — Page Actualités (Query Loop)
   Layout : 2 “featured” + 3 colonnes
   Cible : .loop-toutes-actus
   ========================================================= */

.loop-toutes-actus{
  --afo-gap-x: clamp(18px, 2vw, 30px);
  --afo-gap-y: clamp(26px, 3vw, 30px);
}

/* ---------- Grille (UL) ---------- */

.loop-toutes-actus .kb-query-grid-wrap{
  columns: unset !important; /* neutralise masonry/columns Kadence */

  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;

  column-gap: var(--afo-gap-x) !important;
  row-gap: var(--afo-gap-y) !important;

  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* ---------- Items (LI) ---------- */

.loop-toutes-actus .kb-query-grid-wrap > li.kb-query-item{
  margin: 0 !important;
  display: flex !important; /* permet à la carte de remplir la hauteur */
}

/* 1–2 : 2 colonnes */
.loop-toutes-actus .kb-query-grid-wrap > li.kb-query-item:nth-child(-n+2){
  grid-column: span 6;
}

/* 3–8 : 3 colonnes */
.loop-toutes-actus .kb-query-grid-wrap > li.kb-query-item:nth-child(n+3){
  grid-column: span 4;
}

/* ---------- Carte : structure flex pour coller "Lire l'article" en bas ---------- */

.loop-toutes-actus .kb-query-item .kb-section-has-link{
  flex: 1 1 auto !important;
  width: 100%;
}

.loop-toutes-actus .kb-query-item .kb-section-has-link > .kt-inside-inner-col{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0;
}

/* Colonne contenu juste après la vignette */
.loop-toutes-actus .kb-query-item .actu-thumb + .wp-block-kadence-column{
  flex: 1 1 auto !important;
}

.loop-toutes-actus .kb-query-item .actu-thumb + .wp-block-kadence-column > .kt-inside-inner-col{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0;
}

/* Footer "Lire l’article" collé en bas */
.loop-toutes-actus .kb-query-item .lire-article{
  margin-top: auto !important;
}

/* ---------- Responsive ---------- */

/* Tablette : 2 colonnes (y compris les 2 premiers côte-à-côte) */
@media (max-width: 1024px){
  .loop-toutes-actus .kb-query-grid-wrap{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .loop-toutes-actus .kb-query-grid-wrap > li.kb-query-item{
    grid-column: auto !important;
  }
}

/* Mobile : 1 colonne */
@media (max-width: 767px){
  .loop-toutes-actus .kb-query-grid-wrap{
    grid-template-columns: 1fr !important;
  }
}


/* ===== AFO — Ressources : “Lire l’article” collé en bas (layout statique) ===== */

/* Je force les colonnes de la section .ressources-ul à bien s’étirer */
.ressources-ul .kt-row-column-wrap.kt-has-5-columns {
  align-items: stretch;
}

/* Chaque colonne principale devient un flex vertical */
.ressources-ul .wp-block-kadence-column > .kt-inside-inner-col {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Le petit rowlayout “Lire l’article →” descend en bas de la colonne */
.ressources-ul .wp-block-kadence-column > .kt-inside-inner-col > .lire-article {
  margin-top: auto;
}
.afo-ressources-grid .thematiques {
  display: inline-flex;
  align-items: center;
  gap:5px;
}

.afo-ressources-grid .thematiques::before {
  content: " ";
    display: flex;
    width: 25px;
    height: 25px;
    padding-right: 10px;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%2333224D'%3E%3Cpath d='M443.02-100q-13.56 0-27.18-5.42-13.63-5.43-24.53-16.27L121.08-391.92q-11-10.96-16.04-24.21-5.04-13.24-5.04-26.94 0-13.7 5.04-27.33 5.04-13.62 16.04-24.52l342.77-343.39q9.96-9.94 23.54-15.81 13.58-5.88 28.07-5.88h271.23q30.31 0 51.5 21.35 21.19 21.36 21.19 51.34v271.23q0 14.64-5.42 27.9-5.42 13.26-15.65 23.1L494.54-121.69q-10.85 10.84-24.41 16.27-13.55 5.42-27.11 5.42Zm-8.94-63.85q3.84 3.85 9.04 3.85 5.19 0 9.03-3.85l343.77-344q1.93-1.92 2.7-4.23.76-2.3.76-4.61v-270.62q0-5.38-3.65-8.84-3.65-3.47-9.04-3.47H511.08L163.85-452.15q-3.85 3.84-3.85 9.03 0 5.2 3.85 9.04l270.23 270.23Zm264.15-485q20.99 0 35.69-14.58 14.69-14.58 14.69-35.42 0-20.99-14.64-35.68-14.65-14.7-35.58-14.7t-35.54 14.65q-14.62 14.65-14.62 35.58 0 20.92 14.58 35.54 14.59 14.61 35.42 14.61ZM479.62-479.23Z'/%3E%3C/svg%3E");
}
/*-------------- PAGE RESSOURCES ---------------- */
/* ===== AFO — Query Loop ressources : CTA “Lire l’article” collé en bas ===== */

/* 1. La carte complète prend toute la hauteur de la cellule */
.afo-ressources-grid .kb-query-item .kb-section-has-link {
  height: 100%;
}

/* 2. Je passe le contenu de la carte en flex vertical */
.afo-ressources-grid .kb-query-item .kb-section-has-link > .kt-inside-inner-col {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* 3. La colonne texte interne devient elle aussi un conteneur flex */
.afo-ressources-grid .kb-query-item .kb-section-has-link
  > .kt-inside-inner-col
  > .wp-block-kadence-column
  > .kt-inside-inner-col {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* 4. Le rowlayout .lire-article reste collé tout en bas de la carte */
.afo-ressources-grid .kb-query-item .lire-article {
  margin-top: auto;
}



/* Page newsletter ---------------------------------*/
.sib-form,
.sib-input,
#sib-form-container,
#sib-form,
#sib-container,
.sib-form-block {
  padding-top:0px!important;
  padding-left:0!important;
  padding-right:0!important;
  margin-left:0!important;
  margin-right: 0!important;
}

.sib-form {
  padding: 0px !important;
}
.sib-form .entry__field {
  border: none!important;
}
.sib-form .input {
  border-radius: 5px!important;
  border:1px solid var(--global-palette1)!important;
  height:70px!important;
  padding-left:20px!important;
  font-size:18px!important;
}
.sib-form .input:hover,
.sib-form .input:focus,
.sib-form .input:focus-visible
 {
  outline : 2px solid var(--global-palette2);
  outline-offset: 2px;
  border-radius: 5px;
}
.sib-form .input::placeholder {
  color: #000;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.sib-form .input:focus::placeholder {
  opacity:0.5;
}
.sib-form button {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  font-size: 18px!important;
  font-family: 'BBB Poppins TN Display';
  font-weight:600!important;
  line-height:24px!important;
  padding: 20px 40px 20px 40px!important;
}
@media(min-width:768px) {
.sib-form button {
  font-size: 24px!important;
  line-height:30px!important;
}
}

.sib-form button:hover {
  background-color: var(--global-palette1)!important;
  color:#fff!important;
  fill:#fff!important;
}
.sib-form button::before{
  content:'';
  display:inline-block!important;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyBmaWxsPSdub25lJz48cGF0aCBkPSdNMjcuNTAwNSA4Ljc1TDE2LjI2MTcgMTUuOTA4OEMxNS44ODAzIDE2LjEzMDMgMTUuNDQ3MiAxNi4yNDY5IDE1LjAwNjEgMTYuMjQ2OUMxNC41NjUxIDE2LjI0NjkgMTQuMTMxOSAxNi4xMzAzIDEzLjc1MDUgMTUuOTA4OEwyLjUwMDUgOC43NScgc3Ryb2tlPScjMzMyMjREJyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvPjxwYXRoIGQ9J00yNS4wMDA1IDVINS4wMDA1QzMuNjE5OCA1IDIuNTAwNSA2LjExOTMgMi41MDA1IDcuNVYyMi41QzIuNTAwNSAyMy44ODA4IDMuNjE5OCAyNS4wMDAxIDUuMDAwNSAyNS4wMDAxSDI1LjAwMDVDMjYuMzgxMiAyNS4wMDAxIDI3LjUwMDUgMjMuODgwOCAyNy41MDA1IDIyLjVWNy41QzI3LjUwMDUgNi4xMTkzIDI2LjM4MTIgNSAyNS4wMDA1IDVaJyBzdHJva2U9JyMzMzIyNEQnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8+PC9zdmc+Cg==");
  width:30px;
  height:30px;
}
.sib-form button:hover::before{
  content:'';
  display:inline-block!important;
 background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyBmaWxsPSdub25lJz48cGF0aCBkPSdNMjcuNTAwNSA4Ljc1TDE2LjI2MTcgMTUuOTA4OEMxNS44ODAzIDE2LjEzMDMgMTUuNDQ3MiAxNi4yNDY5IDE1LjAwNjEgMTYuMjQ2OUMxNC41NjUxIDE2LjI0NjkgMTQuMTMxOSAxNi4xMzAzIDEzLjc1MDUgMTUuOTA4OEwyLjUwMDUgOC43NScgc3Ryb2tlPScjZmZmJyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvPjxwYXRoIGQ9J00yNS4wMDA1IDVINS4wMDA1QzMuNjE5OCA1IDIuNTAwNSA2LjExOTMgMi41MDA1IDcuNVYyMi41QzIuNTAwNSAyMy44ODA4IDMuNjE5OCAyNS4wMDAxIDUuMDAwNSAyNS4wMDAxSDI1LjAwMDVDMjYuMzgxMiAyNS4wMDAxIDI3LjUwMDUgMjMuODgwOCAyNy41MDA1IDIyLjVWNy41QzI3LjUwMDUgNi4xMTkzIDI2LjM4MTIgNSAyNS4wMDA1IDVaJyBzdHJva2U9JyNmZmYnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8+PC9zdmc+Cg==");
  width:30px;
  height:30px;
}

.sib-form button.participer::before{
  content:'';
  display:inline-block!important;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczOCcgaGVpZ2h0PSczOCcgdmlld0JveD0nMCAwIDM4IDM4JyBmaWxsPSdub25lJz48ZyBjbGlwLXBhdGg9J3VybCgjY2xpcDBfMTI5Nl8xMTIxKSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J004LjMxMDkyIDUuOTM3NUM4LjMxMDkyIDUuNDEyNTkgOC41MTk0NCA0LjkwOTE4IDguODkwNiA0LjUzODAyQzkuMjYxNzcgNC4xNjY4NSA5Ljc2NTE4IDMuOTU4MzMgMTAuMjkwMSAzLjk1ODMzQzEwLjgxNSAzLjk1ODMzIDExLjMxODQgNC4xNjY4NSAxMS42ODk2IDQuNTM4MDJDMTIuMDYwNyA0LjkwOTE4IDEyLjI2OTMgNS40MTI1OSAxMi4yNjkzIDUuOTM3NUMxMi4yNjkzIDYuNDYyNDEgMTIuMDYwNyA2Ljk2NTgyIDExLjY4OTYgNy4zMzY5OEMxMS4zMTg0IDcuNzA4MTUgMTAuODE1IDcuOTE2NjcgMTAuMjkwMSA3LjkxNjY3QzkuNzY1MTggNy45MTY2NyA5LjI2MTc3IDcuNzA4MTUgOC44OTA2IDcuMzM2OThDOC41MTk0NCA2Ljk2NTgyIDguMzEwOTIgNi40NjI0MSA4LjMxMDkyIDUuOTM3NVpNMTAuMjkwMSAwQzguNzE1MzYgMCA3LjIwNTEzIDAuNjI1NTU2IDYuMDkxNjQgMS43MzkwNUM0Ljk3ODE0IDIuODUyNTUgNC4zNTI1OCA0LjM2Mjc4IDQuMzUyNTggNS45Mzc1QzQuMzUyNTggNy41MTIyMiA0Ljk3ODE0IDkuMDIyNDUgNi4wOTE2NCAxMC4xMzU5QzcuMjA1MTMgMTEuMjQ5NCA4LjcxNTM2IDExLjg3NSAxMC4yOTAxIDExLjg3NUMxMS44NjQ4IDExLjg3NSAxMy4zNzUgMTEuMjQ5NCAxNC40ODg1IDEwLjEzNTlDMTUuNjAyIDkuMDIyNDUgMTYuMjI3NiA3LjUxMjIyIDE2LjIyNzYgNS45Mzc1QzE2LjIyNzYgNC4zNjI3OCAxNS42MDIgMi44NTI1NSAxNC40ODg1IDEuNzM5MDVDMTMuMzc1IDAuNjI1NTU2IDExLjg2NDggMCAxMC4yOTAxIDBaTTEwLjI5MDEgMTEuODc1QzcuMDA2MjUgMTEuODc1IDMuODY4MDggMTIuNTExNSAwLjk5Mjc1IDEzLjY2ODlMMCAxNC4wNjc5VjE5Ljc5MTdIMjAuNTgzM1YxNC4wNjc5TDE5LjU5MDYgMTMuNjY4OUMxNi42MzQ1IDEyLjQ4MDYgMTMuNDc2IDExLjg3MTYgMTAuMjkwMSAxMS44NzVaTTE4LjQwOTQgMzEuODc3M0MyMS4yODQ3IDMwLjcxOTggMjQuNDI0NSAzMC4wODMzIDI3LjcwODMgMzAuMDgzM0MzMC45OTIyIDMwLjA4MzMgMzQuMTMxOSAzMC43MTk4IDM3LjAwNzIgMzEuODc3M0wzOCAzMi4yNzYzVjM4SDE3LjQxNjdWMzIuMjc2M0wxOC40MDk0IDMxLjg3NzNaTTI1LjcyNzYgMjQuMTQ1OEMyNS43Mjc2IDIzLjYyMDkgMjUuOTM2MSAyMy4xMTc1IDI2LjMwNzMgMjIuNzQ2NEMyNi42Nzg0IDIyLjM3NTIgMjcuMTgxOCAyMi4xNjY3IDI3LjcwNjggMjIuMTY2N0MyOC4yMzE3IDIyLjE2NjcgMjguNzM1MSAyMi4zNzUyIDI5LjEwNjIgMjIuNzQ2NEMyOS40Nzc0IDIzLjExNzUgMjkuNjg1OSAyMy42MjA5IDI5LjY4NTkgMjQuMTQ1OEMyOS42ODU5IDI0LjY3MDcgMjkuNDc3NCAyNS4xNzQyIDI5LjEwNjIgMjUuNTQ1M0MyOC43MzUxIDI1LjkxNjUgMjguMjMxNyAyNi4xMjUgMjcuNzA2OCAyNi4xMjVDMjcuMTgxOCAyNi4xMjUgMjYuNjc4NCAyNS45MTY1IDI2LjMwNzMgMjUuNTQ1M0MyNS45MzYxIDI1LjE3NDIgMjUuNzI3NiAyNC42NzA3IDI1LjcyNzYgMjQuMTQ1OFpNMjcuNzA2OCAxOC4yMDgzQzI2LjEzMiAxOC4yMDgzIDI0LjYyMTggMTguODMzOSAyMy41MDgzIDE5Ljk0NzRDMjIuMzk0OCAyMS4wNjA5IDIxLjc2OTIgMjIuNTcxMSAyMS43NjkyIDI0LjE0NThDMjEuNzY5MiAyNS43MjA2IDIyLjM5NDggMjcuMjMwOCAyMy41MDgzIDI4LjM0NDNDMjQuNjIxOCAyOS40NTc4IDI2LjEzMzYgMzAuMDgzMyAyNy43MDgzIDMwLjA4MzNDMjkuMjgzMSAzMC4wODMzIDMwLjc5MTcgMjkuNDU3OCAzMS45MDUyIDI4LjM0NDNDMzMuMDE4NyAyNy4yMzA4IDMzLjY0NDMgMjUuNzIwNiAzMy42NDQzIDI0LjE0NThDMzMuNjQ0MyAyMi41NzExIDMzLjAxODcgMjEuMDYwOSAzMS45MDUyIDE5Ljk0NzRDMzAuNzkxNyAxOC44MzM5IDI5LjI4MTUgMTguMjA4MyAyNy43MDY4IDE4LjIwODNaTTcuNTIwODMgMzAuNDc5MlYyMy43NUgzLjU2MjVWMzQuNDM3NUgxNC4yNVYzMC40NzkySDcuNTIwODNaTTIzLjc1IDcuNTIwODNIMzAuNDc5MlYxNC4yNUgzNC40Mzc1VjMuNTYyNUgyMy43NVY3LjUyMDgzWicgZmlsbD0nIzMzMjI0RCcvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9J2NsaXAwXzEyOTZfMTEyMSc+PHJlY3Qgd2lkdGg9JzM4JyBoZWlnaHQ9JzM4JyBmaWxsPSd3aGl0ZScvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPgo=");
  width:38px;
  height:38px;
}
.sib-form button.participer:hover::before{
  content:'';
  display:inline-block!important;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczOCcgaGVpZ2h0PSczOCcgdmlld0JveD0nMCAwIDM4IDM4JyBmaWxsPSdub25lJz48ZyBjbGlwLXBhdGg9J3VybCgjY2xpcDBfMTI5Nl8xMTIxKSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J004LjMxMDkyIDUuOTM3NUM4LjMxMDkyIDUuNDEyNTkgOC41MTk0NCA0LjkwOTE4IDguODkwNiA0LjUzODAyQzkuMjYxNzcgNC4xNjY4NSA5Ljc2NTE4IDMuOTU4MzMgMTAuMjkwMSAzLjk1ODMzQzEwLjgxNSAzLjk1ODMzIDExLjMxODQgNC4xNjY4NSAxMS42ODk2IDQuNTM4MDJDMTIuMDYwNyA0LjkwOTE4IDEyLjI2OTMgNS40MTI1OSAxMi4yNjkzIDUuOTM3NUMxMi4yNjkzIDYuNDYyNDEgMTIuMDYwNyA2Ljk2NTgyIDExLjY4OTYgNy4zMzY5OEMxMS4zMTg0IDcuNzA4MTUgMTAuODE1IDcuOTE2NjcgMTAuMjkwMSA3LjkxNjY3QzkuNzY1MTggNy45MTY2NyA5LjI2MTc3IDcuNzA4MTUgOC44OTA2IDcuMzM2OThDOC41MTk0NCA2Ljk2NTgyIDguMzEwOTIgNi40NjI0MSA4LjMxMDkyIDUuOTM3NVpNMTAuMjkwMSAwQzguNzE1MzYgMCA3LjIwNTEzIDAuNjI1NTU2IDYuMDkxNjQgMS43MzkwNUM0Ljk3ODE0IDIuODUyNTUgNC4zNTI1OCA0LjM2Mjc4IDQuMzUyNTggNS45Mzc1QzQuMzUyNTggNy41MTIyMiA0Ljk3ODE0IDkuMDIyNDUgNi4wOTE2NCAxMC4xMzU5QzcuMjA1MTMgMTEuMjQ5NCA4LjcxNTM2IDExLjg3NSAxMC4yOTAxIDExLjg3NUMxMS44NjQ4IDExLjg3NSAxMy4zNzUgMTEuMjQ5NCAxNC40ODg1IDEwLjEzNTlDMTUuNjAyIDkuMDIyNDUgMTYuMjI3NiA3LjUxMjIyIDE2LjIyNzYgNS45Mzc1QzE2LjIyNzYgNC4zNjI3OCAxNS42MDIgMi44NTI1NSAxNC40ODg1IDEuNzM5MDVDMTMuMzc1IDAuNjI1NTU2IDExLjg2NDggMCAxMC4yOTAxIDBaTTEwLjI5MDEgMTEuODc1QzcuMDA2MjUgMTEuODc1IDMuODY4MDggMTIuNTExNSAwLjk5Mjc1IDEzLjY2ODlMMCAxNC4wNjc5VjE5Ljc5MTdIMjAuNTgzM1YxNC4wNjc5TDE5LjU5MDYgMTMuNjY4OUMxNi42MzQ1IDEyLjQ4MDYgMTMuNDc2IDExLjg3MTYgMTAuMjkwMSAxMS44NzVaTTE4LjQwOTQgMzEuODc3M0MyMS4yODQ3IDMwLjcxOTggMjQuNDI0NSAzMC4wODMzIDI3LjcwODMgMzAuMDgzM0MzMC45OTIyIDMwLjA4MzMgMzQuMTMxOSAzMC43MTk4IDM3LjAwNzIgMzEuODc3M0wzOCAzMi4yNzYzVjM4SDE3LjQxNjdWMzIuMjc2M0wxOC40MDk0IDMxLjg3NzNaTTI1LjcyNzYgMjQuMTQ1OEMyNS43Mjc2IDIzLjYyMDkgMjUuOTM2MSAyMy4xMTc1IDI2LjMwNzMgMjIuNzQ2NEMyNi42Nzg0IDIyLjM3NTIgMjcuMTgxOCAyMi4xNjY3IDI3LjcwNjggMjIuMTY2N0MyOC4yMzE3IDIyLjE2NjcgMjguNzM1MSAyMi4zNzUyIDI5LjEwNjIgMjIuNzQ2NEMyOS40Nzc0IDIzLjExNzUgMjkuNjg1OSAyMy42MjA5IDI5LjY4NTkgMjQuMTQ1OEMyOS42ODU5IDI0LjY3MDcgMjkuNDc3NCAyNS4xNzQyIDI5LjEwNjIgMjUuNTQ1M0MyOC43MzUxIDI1LjkxNjUgMjguMjMxNyAyNi4xMjUgMjcuNzA2OCAyNi4xMjVDMjcuMTgxOCAyNi4xMjUgMjYuNjc4NCAyNS45MTY1IDI2LjMwNzMgMjUuNTQ1M0MyNS45MzYxIDI1LjE3NDIgMjUuNzI3NiAyNC42NzA3IDI1LjcyNzYgMjQuMTQ1OFpNMjcuNzA2OCAxOC4yMDgzQzI2LjEzMiAxOC4yMDgzIDI0LjYyMTggMTguODMzOSAyMy41MDgzIDE5Ljk0NzRDMjIuMzk0OCAyMS4wNjA5IDIxLjc2OTIgMjIuNTcxMSAyMS43NjkyIDI0LjE0NThDMjEuNzY5MiAyNS43MjA2IDIyLjM5NDggMjcuMjMwOCAyMy41MDgzIDI4LjM0NDNDMjQuNjIxOCAyOS40NTc4IDI2LjEzMzYgMzAuMDgzMyAyNy43MDgzIDMwLjA4MzNDMjkuMjgzMSAzMC4wODMzIDMwLjc5MTcgMjkuNDU3OCAzMS45MDUyIDI4LjM0NDNDMzMuMDE4NyAyNy4yMzA4IDMzLjY0NDMgMjUuNzIwNiAzMy42NDQzIDI0LjE0NThDMzMuNjQ0MyAyMi41NzExIDMzLjAxODcgMjEuMDYwOSAzMS45MDUyIDE5Ljk0NzRDMzAuNzkxNyAxOC44MzM5IDI5LjI4MTUgMTguMjA4MyAyNy43MDY4IDE4LjIwODNaTTcuNTIwODMgMzAuNDc5MlYyMy43NUgzLjU2MjVWMzQuNDM3NUgxNC4yNVYzMC40NzkySDcuNTIwODNaTTIzLjc1IDcuNTIwODNIMzAuNDc5MlYxNC4yNUgzNC40Mzc1VjMuNTYyNUgyMy43NVY3LjUyMDgzWicgZmlsbD0nI2ZmZicvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9J2NsaXAwXzEyOTZfMTEyMSc+PHJlY3Qgd2lkdGg9JzM4JyBoZWlnaHQ9JzM4JyBmaWxsPSd3aGl0ZScvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPgo=");
  width:38px;
  height:38px;
}

.sib-form button svg {
 fill:#fff;
 width:30px;
 height:30px;
}
.sib-form .checkbox {
  border-radius: 2px!important;
  border: 1px solid #565656!important;
}
.sib-form-block p {
  font-size:18px!important;
}




/* Footer-2 */
/* (réservé pour d’éventuelles modifs pied de page AFO) */
footer ul li a:hover,
footer .footer-bottom a:hover,
footer ul li a:focus-visible,
footer .footer-bottom a:focus-visible {
  text-decoration: underline!important;
  text-decoration-color: #fff!important;
}
footer ul li div.kb-link-wrap:hover {
  border-bottom: none!important;
}

