#breadcrumbs > span {
    border: solid 1px #4d4d4d;
    border-radius: 5px;
    background: linear-gradient(89.71deg, rgba(77, 77, 77, 0.1) 2.34%, rgba(179, 179, 179, 0.1) 49.44%, rgba(77, 77, 77, 0.1) 98.39%);
    padding: 9px 20px;
}

#breadcrumbs {
    font-size: 11px;
    line-height: 130%;
}

#breadcrumbs, #breadcrumbs a {
    color: #1b1b1b;
}

#breadcrumbs span span {
    padding: 0 1px;
}

.header-first * {
    color: #1b1b1b;
}

nav.menu {
    background: #1b1b1b;
}

ul.menu li ul.sub-menu {
    background: #1b1b1b;
}

.first-categorie {
	background-color: #fcfaf4;
    background-image: linear-gradient(to right, #dfddd51a 2px, transparent 2px), linear-gradient(to bottom, #dfddd51a 2px, transparent 2px);
    background-size: 103px 103px;
    background-position: 41px 25px;
    width: 100%;
    margin-top: 0;
    color: white;
    padding-bottom: 75px; 
    text-align: center;
    color: #1b1b1b;
}

.first-categorie .etiquette {
    background: #e2f14f;
    display: block;
    width: fit-content;
    padding: 11px 17px;
    border: solid 1px black;
    border-radius: 60px;
    text-transform: uppercase;
    color: black;
    font-size: 20px;
    position: absolute;
}

.first-categorie .columns {
    gap: 0;
}

.first-categorie .column { position: relative;}

.first-categorie .etiquette:nth-child(1) {
    top: 50%;
    right: 50px;
    transform: translate(-30px, -100%) rotate(-7deg);
    transform-origin: top right;
}

.first-categorie .etiquette:nth-child(2) {
    top: 67%;
    right: 0;
    transform: translate(-20px, -50%) rotate(10deg);
    transform-origin: top right;
}

.first-categorie .column:not(:first-of-type) .etiquette:nth-child(1) {
    left: 0;
    top: 45%;
    transform: translate(20px) rotate(-7deg);
}

.second-categorie {
    padding: 50px 0;
    background: #8f86fa;
    position: relative;
}

.second-categorie.bottom-100 { padding-bottom: 100px; }
.second-categorie h2 { color: white; }

.second-categorie #search-bar {
    width: calc(100% - 65px);
    display: block;
    border: solid 1px black;
    border-radius: 10px;
    font-size: 18px;
    padding: 15px;
    padding-left: 50px;
    font-size: 14px;
}

.search-div::before {
    font-family: 'icones';
    content: "L";
    position: absolute;
    top: 15px;
    left: 20px;
}

.search-div {
    margin: auto;
    width: 750px;
    position: relative;
    margin-top: -75px;
    margin-bottom: 50px;
}

div#result-search-bar {
    position: absolute;
    top: 48px;
    width: calc(100% - 50px);
    color: white;
    z-index: 2;
}

div#result-search-bar p {
    background: #1b1b1bab;
    margin: 0;
    padding: 10px 25px;
    width: 100%;
    transition: background 0.4s ease;
}

div#result-search-bar p:last-of-type {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
}

div#result-search-bar p:hover {
    background: #1b1b1be6;
}

.second-categorie .boutons-list::before {
    content: "Accès direct";
    display: flex;
    align-items: center;
    color: white;
    font-family: 'RedHat';
    font-size: 18px;
    font-weight: 700;
}

.second-categorie .boutons-list-item {
    border-color: white;
    color: white;
}

.second-categorie .boutons-list-item::after {
    content: "B";
    font-family: 'icones';
    background: transparent;
    position: relative;
    width: auto;
    font-size: 15px;
    height: 18px;
    line-height: 20px;
    margin-bottom: 0;
    display: inline-block;
}

.ressources-list {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
}

.ressource-item {
    display: flex;
    width: calc(33% - 11px);
    height: 390px;
    background: #fcfaf4;
    border-radius: 20px;
    color: #1B1B1B;
    text-decoration: none;
    position: relative;
    transition: background 0.4s ease, color 0.4s ease;
}

.ressource-item:hover {
    background: #1B1B1B;
    color: #fff;
}

.ressource-item:not(.video-card):hover::after {
    background: #3a3a3a;
    color: #FFF;
}

.ressource-content {
    position: absolute;
    top: 105px;
    left: 65px;
}

.ressource-title {
    font-size: 24px;
    font-family: 'RedHat';
    line-height: 120%;
    font-weight: 600;
    max-width: 300px;
    display: block;
    margin-bottom: 11px;
}

.ressource-date {
    font-size: 12px;
    color: #999;
    line-height: 120%;
    margin-top: 15px;
}

.ressource-type {
    margin: 0;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
}

.ressource-type::before {
    content: "";
    width: 7px;
    height: 7px;
    background: #8f86fa;
    display: inline-block;
    border-radius: 100%;
    margin-right: 11px;
    margin-bottom: 1px;
}

.ressource-item:not(.video-card)::after {
    content: "B";
    font-family: 'icones';
    position: absolute;
    bottom: 40px;
    right: 40px;
    border-radius: 100%;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
    font-size: 20px;
    color: #8F86FA;
    background: #f0e9f9;
    transition: background 0.4s ease, color 0.4s ease;
}

.ressource-item.video {
    overflow: hidden;
    background: #1b1b1b;
}

.ressource-item.video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.8;
}

.ressource-item.video::after {
    content: "A";
    background: white;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: solid 1px black;
    border-radius: 8px;
    color: black;
    width: 45px;
    height: 45px;
    line-height: 45px;
}

.third-categorie {
    padding-top: 150px;
}
.fourth-categorie .boutons-list-item { margin-bottom:50px; }

.fourth-categorie p {
    max-width: 1040px;
    margin: auto;
}
.fourth-categorie .buttons {
    margin-top: 50px;
}
.page-numbers li::marker {
    content: none;
}

.page-numbers a {
    text-decoration: none;
    color: #1D1D1D;
    font-size: 14px;
    display: block;
    width: 31px;
    height: 31px;
    text-align: center;
    line-height: 31px;
}

.page-numbers {
    display: flex;
    gap: 15px;
    margin-top: 50px;
    justify-content: center;
}

.page-numbers .current {
    color: white;
    padding: 0 15px;
    border-radius: 100%;
    font-size: 14px;
    display: block;
    position: relative;
    height: 31px;
    width: 31px;
    padding: 0;
    text-align: center;
    line-height: 31px;
}

.page-numbers .current::before {
    content: "";
    width: 31px;
    height: 31px;
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    background: black;
    border-radius: 100%;
    z-index: -1;
    transform: translate(-50%);
}

.page-numbers a.next::before {
    display: block;
    content: "M";
    font-family: 'icones';
    transform: rotate(-90deg);
    font-size: 10px;
}

.page-numbers a.prev::before {
    display: block;
    content: "M";
    font-family: 'icones';
    transform: rotate(90deg);
    font-size: 10px;
}
.card {
    max-width: 825px;
    display: flex;
    position: relative;
    margin: auto;
    border-radius: 20px;
    background: #fff;
}

.card .col-1 {
    width: 75%;
    padding: 36px 41px 29px;
}

.card .col-1 .buttons .button a { font-size: 14px; }

.sticker {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-40%) rotate(-2deg);
    background: #e2f14f;
    text-transform: uppercase;
    font-size: 20px;
    font-family: 'DMSans';
    padding: 5px 18px;
    border-radius: 60px;
    border: solid 1px black;
}

.card .col-2 {
    width: 25%;
}

.card .col-2 img {
    width: 100%;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    object-fit: cover;
    height: 100%;
}

.contenu p, .tel {
    color: #1B1B1B;
    font-size: 24px;
    line-height: 120%;
    font-family: 'RedHat';
}

.contenu p strong { font-style: italic; }

.nom {
    font-size: 18px;
}

.footer-card {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.lien-rs a {
    display: flex;
    color: #1B1B1B;
}

.lien-rs {
    display: flex;
    align-self: end;
    align-items: center;
}

.lien-rs a img {
    width: 24px;
    height: 24px;
    display: block;
    margin-right: 11px
}

.lien-rs a span {
    font-size: 14px;
    text-decoration: underline;
}

.fifth-categorie {padding-bottom: 150px;}

.fifth-categorie .hn {
    max-width: 750px;
}

.fond-jaune {background: #fcfaf4;}

.onglets-nav {
    display: flex;
    list-style: none;
    background: #1b1b1b;
    border-radius: 60px;
    padding: 16px 43px;
    justify-content: space-between;
    width: fit-content;
    gap: 50px;
    margin: 50px auto;
}

.onglets-nav .onglets-nav-item div {
    background: none;
    border: none;
    cursor: pointer;
    color: white;
    font-size: 14px;
    font-family: 'RedHat';
    font-weight: 400;
    text-align: center;
    line-height: 179%;
}

.onglets-nav .onglets-nav-item div.active::after {
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    background: #8f86fa;
    border-radius: 100%;
    margin: auto;
    margin-bottom: -6px;
}

.ressource-item .flex {
    display: flex;
    gap: 22px;
}

.second-categorie .boutons-list-item:hover::after {
    background: transparent !important;
}
.second-categorie .boutons-list-item:hover {
    border-color: #1B1B1B !important;
}







#breadcrumbs > span {
    border: solid 1px #4d4d4d;
    border-radius: 5px;
    background: linear-gradient(89.71deg, rgba(77, 77, 77, 0.1) 2.34%, rgba(179, 179, 179, 0.1) 49.44%, rgba(77, 77, 77, 0.1) 98.39%);
    padding: 9px 20px;
}

#breadcrumbs {
    font-size: 11px;
    line-height: 130%;
}

#breadcrumbs, #breadcrumbs a {
    color: #1b1b1b;
}

#breadcrumbs span span {
    padding: 0 1px;
}

.header-first * {
    color: #1b1b1b;
}

nav.menu {
    background: #1b1b1b;
}

ul.menu li ul.sub-menu {
    background: #1b1b1b;
}

.first-archive-categorie {
    background-color: #fcfaf4;
    background-image: linear-gradient(to right, #dfddd51a 2px, transparent 2px), linear-gradient(to bottom, #dfddd51a 2px, transparent 2px);
    background-size: 103px 103px;
    background-position: 41px 25px;
    width: 100%;
    margin-top: 0;
    padding-bottom: 75px; 
    text-align: center;
    color: #1b1b1b;
}

.first-archive-categorie p {
    text-align: center;
    max-width: 800px;
    display: block;
    margin: auto;
}
.first-archive-categorie .etiquette {
    background: #e2f14f;
    display: block;
    width: fit-content;
    padding: 5px 18px;
    border: solid 1px black;
    border-radius: 60px;
    text-transform: uppercase;
    color: black;
    font-size: 20px;
    position: absolute;
}

.first-archive-categorie .columns {
    gap: 0;
}

.first-archive-categorie .column { position: relative;}

.first-archive-categorie .etiquette:nth-child(1) {
    top: 50%;
    right: 50px;
    transform: translate(-30px, -100%) rotate(-7deg);
    transform-origin: top right;
}

.first-archive-categorie .etiquette:nth-child(2) {
    top: 67%;
    right: 0;
    transform: translate(-20px, -50%) rotate(10deg);
    transform-origin: top right;
}

.first-archive-categorie .column:not(:first-of-type) .etiquette:nth-child(1) {
    left: 0;
    top: 45%;
    transform: translate(20px) rotate(-7deg);
}

h1 { text-align: center; }


.faux-cta {
    width: calc(33% - 91px);
    display: block;
    position: relative;
    background: #fcfaf4;
    border-radius: 20px;
    padding: 90px 40px;
    color: #1b1b1b;
    text-decoration: none;
    transition: color 0.4s ease, background 0.4s ease;
}

.faux-cta:hover {
    color: white;
}

.faux-cta::after {
    content: "B";
    font-family: 'icones';
    position: absolute;
    bottom: 40px;
    right: 40px;
    width: 40px;
    height: 40px;
    background: #e2d6ff80;
    border-radius: 100%;
    text-align: center;
    line-height: 40px;
    color: #9c93fa;
}

.ressource .titre {
    padding-right: 20px;
}

.ressource .titre p {
    font-size: 36px;
    color: #1b1b1b;
    line-height: 120%;
    letter-spacing: 0px;
    margin: 0;
    font-family: 'RedHat';
}

.ressource .sticker {
    background: #e2f14f;
    text-transform: uppercase;
    border-radius: 60px;
    border: solid 1px black;
    width: fit-content;
    padding: 5px 18px;
    position: absolute;
    right: 30px;
    left: initial;
    top: 50px;
    transform: rotate(7deg);
    font-size: 14px;
}

.ressource .resume {
    margin: 0;
    font-weight: 600;
    font-size: 14px;
    text-decoration: underline;
    margin-top: 20px;
}

.ressource .titre p strong {
    font-style: italic;
    font-family: 'RedHat';
}

.ressource {
    display: flex;
    gap: 22px;
    flex-wrap: wrap;
}

.card {
    max-width: 825px;
    display: flex;
    position: relative;
    margin: auto;
    border-radius: 20px;
    background: #fff;
}

.card .col-1 {
    width: 75%;
    padding: 36px 41px 29px;
}

.card .col-1 .buttons .button a { font-size: 14px; }

.sticker {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-40%) rotate(-2deg);
    background: #e2f14f;
    text-transform: uppercase;
    font-size: 20px;
    font-family: 'DMSans';
    padding: 5px 18px;
    border-radius: 60px;
    border: solid 1px black;
}

.card .col-2 {
    width: 25%;
}

.card .col-2 img {
    width: 100%;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    object-fit: cover;
    height: 100%;
}

.contenu p, .tel {
    color: #1B1B1B;
    font-size: 24px;
    line-height: 120%;
    font-family: 'RedHat';
}

.contenu p strong { font-style: italic; }

.nom {
    font-size: 18px;
}

.footer-card {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.lien-rs a {
    display: flex;
    color: #1B1B1B;
}

.lien-rs {
    display: flex;
    align-self: end;
    align-items: center;
}

.lien-rs a img {
    width: 24px;
    height: 24px;
    display: block;
    margin-right: 11px
}

.lien-rs a span {
    font-size: 14px;
    text-decoration: underline;
}

.fond-jaune {
    background: #fcfaf4;
}

.container.boutons-list {
    margin-bottom: 50px;
}

.section.bg-jaune {
    padding-top: 50px;
}

.titre {
    font-size: 24px;
    font-family: 'RedHat';
    line-height: 120%;
    font-weight: 600;
    max-width: 300px;
    display: block;
    margin-bottom: 11px;
}

.ressource-date {
    font-size: 12px;
    color: #999;
    line-height: 120%;
    margin-top: 15px;
}

.onglets-nav {
    display: flex;
    list-style: none;
    margin: 0;
    background: #1b1b1b;
    border-radius: 60px;
    padding: 16px 43px;
    justify-content: space-between;
    width: fit-content;
    margin: auto;
    gap: 50px;
    margin-bottom: 50px;
}

.onglets-nav .onglets-nav-item div {
    background: none;
    border: none;
    cursor: pointer;
    color: white;
    font-size: 14px;
    font-family: 'RedHat';
    font-weight: 400;
    text-align: center;
    line-height: 179%;
    transition: font-weight 0.4s ease;
}

.onglets-nav .onglets-nav-item div::after {
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    background: transparent;
    transition: background 0.4s ease;
    border-radius: 100%;
    margin: auto;
    margin-bottom: -6px;
}

.onglets-nav .onglets-nav-item div.active, .onglets-nav .onglets-nav-item div:hover{
    font-weight: bold;
}

.onglets-nav .onglets-nav-item div.active::after, .onglets-nav .onglets-nav-item div:hover::after{
    background: #8f86fa;
}
.page-numbers li::marker {
    content: none;
}
.newsletter {
    padding: 35px;
}

.onglets-nav-item:last-of-type {
    order: -1;
}

.flex {
    display: flex;
    flex-wrap: wrap;
    column-gap: 22px;
}

@media (max-width: 1024px) {
    .burger-menu span {
        background: #1B1B1B;
    }
    .sticky .burger-menu span {
        background: white;
    }
}

@media (min-width: 1025px) {

  .blog.container.columns {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    /* dense : la carte haute remonte dans le trou laissé à côté des 2 superposées */
    grid-auto-flow: row dense;
  }

  /* Neutralise l'ancienne règle common.css (.article:nth-child(3) : col 2, lignes 1-2, 350px) */
  .blog.container.columns .article {
    grid-row: auto;
    max-width: none;
  }

  /* Groupe impair : 2 superposées (2/3 de large) + 1 haute à droite (1/3) */
  .blog.container.columns .article:nth-child(6n+1),
  .blog.container.columns .article:nth-child(6n+2) {
    grid-column: 1 / 3;
  }

  .blog.container.columns .article:nth-child(6n+3) {
    grid-column: 3 / 4;
    grid-row: span 2;
    max-width: none;
  }

  /* Groupe pair : 1 haute à gauche (1/3) + 2 superposées (2/3) */
  .blog.container.columns .article:nth-child(6n+4) {
    grid-column: 1 / 2;
    grid-row: span 2;
  }

  .blog.container.columns .article:nth-child(6n+5),
  .blog.container.columns .article:nth-child(6n+6) {
    grid-column: 2 / 4;
  }

  /* Cartes hautes : même respiration sous le titre que l'ancienne 3e carte */
  .blog.container.columns .article:nth-child(6n+3) h3,
  .blog.container.columns .article:nth-child(6n+4) h3 {
    margin-bottom: 40px;
  }
}