/* ============================================================
   Theme    : FOXIZ
   Variante : 021
   Version  : 1.3
   Date     : 18/09/2025
   Fusion   : base + couche custom (TDM/POST/MENU) le 2026-05-05
============================================================ */

/* ============================================================
   BLOC 0 - POLICES (font harmonization, sitewide)
============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@400;600;700;900&family=Inter+Tight:wght@400;500;600;700&display=swap');

body {
    --cs-heading-font: "Fraunces", Georgia, serif;
    --cs-body-font: "Inter Tight", system-ui, sans-serif;
}


/* ============================================================
   COUCHE BASE THEME
   (contenu original de style-theme021.css)
============================================================ */

/*Fond1*/
.Fond1 {
    background: linear-gradient(320deg, var(--g-color), var(--noir));
    padding:40px 0;
}

/*TITRE*/
.Titre1 .elementor-heading-title {
    font-family: var(--cs-heading-font);
    font-weight: 700;
    margin-top:24px;
    font-size: 48px;
    line-height: 52px;
}
@media only screen and (max-width: 600px) {
.Titre1 .elementor-heading-title {
    font-size: 26px;
    line-height: 28px;
}}
.Titre2 .elementor-heading-title {
    font-family: var(--cs-heading-font);
    font-weight: 700;
    font-size: 22px;
    line-height: 24px;
}

.Titre1 .elementor-heading-title {
    margin-bottom:0!important;
}


[data-theme="dark"] .Titre1 .elementor-heading-title,
[data-theme="dark"] .Titre2 .elementor-heading-title {
    color:var(--blanc)!important;
}

[data-theme="default"] .Titre1 .elementor-heading-title,
[data-theme="default"] .Titre2 .elementor-heading-title {
    color:var(--noir)!important;
}

[data-theme="dark"] .Titre1.Blanc .elementor-heading-title,
[data-theme="dark"] .Titre2.Blanc .elementor-heading-title {
    color:var(--blanc)!important;
}

[data-theme="default"] .Titre1.Blanc .elementor-heading-title,
[data-theme="default"] .Titre2.Blanc .elementor-heading-title {
    color:var(--blanc)!important;
}

/*SEPARATEUR*/
.Separateur1 {
    width:50%;
    min-width:50%!important;
    max-width:50%!important;
    margin-bottom:8px!important;
}
.Separateur2 {
    width:24%;
    min-width:24%!important;
    max-width:24%!important;
    margin-bottom:8px!important;
}
.Separateur2.Blanc .elementor-divider-separator {
    background-color:var(--blanc)!important;
}

[data-theme="dark"] .elementor-divider-separator {
    background-color: var(--blanc)!important;
}
[data-theme="default"] .elementor-divider-separator {
    background-color: var(--noir)!important;
}

/*TEXTE*/
.Texte1 {
  font-family: var(--cs-body-font);
  text-align: justify;
  font-size: 20px;
  line-height: 23px;
}
@media only screen and (max-width: 600px) {
.Texte1 {
  font-size: 16px;
  line-height: 18px;
  margin-bottom:16px!important;
}}

.Texte1.Blanc {
    color:var(--blanc)!important;
}
@media only screen and (min-width: 600px) {
.Texte40 {
    width:50%;
    margin:auto;
    margin-bottom:32px!important;
}}

/*BOUTON*/
.Bouton1 .elementor-button {
    border-radius: 50px;
    border: 3px solid;
    border-color: var(--g-color);
    background:var(--blanc)!important;
    color:var(--g-color);
    font-size:22px;
    line-height:26px!important;
    font-weight:500!important;
    padding:16px 40px;
}
@media only screen and (max-width: 600px) {
.Bouton1 .elementor-button {
    border: 2px solid;
    font-size:20px;
    line-height:24px!important;
    padding:12px 32px;
}}

.Bouton1 .elementor-button:hover {
    border-radius: 50px;
    border: 3px solid;
    border-color: var(--g-color);
    background:var(--g-color)!important;
    color:var(--blanc);
    font-size:22px;
    line-height:26px!important;
    font-weight:500!important;
    padding:16px 40px;
}
.Bouton1 .elementor-button .elementor-button-text:after {
  content: '\2192'!important;
  margin-left:12px;
}

.Bouton2 .elementor-button {
    border-radius: 50px;
    border: 3px solid;
    border-color: var(--blanc);
    background:none!important;
    color:var(--blanc);
    font-size:22px;
    line-height:26px!important;
    font-weight:500!important;
    padding:16px 40px;
}
@media only screen and (max-width: 600px) {
.Bouton2 .elementor-button {
    border: 2px solid;
    font-size:20px;
    line-height:24px!important;
    padding:12px 32px;
}}
.Bouton2 .elementor-button:hover {
    border-radius: 50px;
    border: 3px solid;
    border-color: var(--blanc);
    background:var(--blanc)!important;
    color:var(--g-color);
    font-size:22px;
    line-height:26px!important;
    font-weight:500!important;
    padding:16px 40px;
}
.Bouton2 .elementor-button .elementor-button-text:after {
  content: '\2192'!important;
  margin-left:12px;
}

/*EFFET AU SURVOL*/
.p-wrap:hover {
  position: relative;
  display: block;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  will-change: transform;
  transform: translateY(-8px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}

/*Theme021Style01*/
/*Theme021Style01 > Espace*/
.Theme021Style01 {
    margin-top:48px!important;
}
.Theme021Style01.T50 {
    margin-top:8px!important;
}
@media only screen and (max-width: 600px) {
.Theme021Style01 {
    margin-top:24px!important;
    margin-bottom:24px!important;
}}

/*Theme021Style01 > Fond*/
.Theme021Style01 .p-wrap {
    padding:0!important;
    border:3px solid var(--g-color);
}
@media only screen and (min-width: 600px) {
.Theme021Style01 .p-wrap {
    margin:0 1.1%;
    width:31%!important;
    min-width:31%!important;
    max-width:31%!important;
}}
/*Theme021Style01 > Fond*/
@media only screen and (min-width: 600px) {
.Theme021Style01.T50 .p-wrap {    
    margin:0 2%;
    width:46%!important;
    min-width:46%!important;
    max-width:46%!important;
}}

[data-theme="dark"] .Theme021Style01 .p-wrap {
    background: var(--g-color);
}
[data-theme="default"].Theme021Style01 .p-wrap {
    background: var(--noir);
}

/*Theme021Style01 > Bordure*/
.Theme021Style01 .p-wrap {
    border-radius:16px;
}
.Theme021Style01 .p-wrap .p-featured {
    border-radius:13px 13px 0 0 ;
}

/*Theme021Style01 > Titre*/
.Theme021Style01 .entry-title {
    font-weight:800!important;
    font-size:24px!important;
    line-height:27px!important;
    margin-top:16px;
    margin-bottom:8px;
}
[data-theme="dark"] .Theme021Style01 .entry-title {
    color:var(--blanc);
}
[data-theme="default"] .Theme021Style01 .entry-title {
    color:var(--g-color);
}

/*Theme021Style01 > Texte*/
.Theme021Style01 .entry-summary {
    font-weight:600!important;
    font-size:14px!important;
    line-height:16px!important;
    margin-bottom:8px;
}

/*Theme021Style01 > Bouton*/
.Theme021Style01 .p-link a {
    font-weight:600!important;
    font-size:14px!important;
    line-height:16px!important;
    margin-bottom:24px;
    padding:8px 4px;
    border:none;
    border-radius:0;
    border-bottom:3px solid var(--g-color);
    width:fit-content;
    transition: all 0.6s;
}
.Theme021Style01 .rbi-cright:before {
  content: '\2192'!important;
}
.Theme021Style01 .rbi-cright {
  content: '\2192'!important;
  margin-top: -3px!important;
}


[data-theme="dark"] .Theme021Style01 .p-link a {
    border-bottom:3px solid var(--blanc);
}
[data-theme="default"] .Theme021Style01 .p-link a {
    border-bottom:3px solid var(--g-color);
}


.Theme021Style01 .p-link a:hover {
    padding:14px 18px;
    margin-top:8px;
    border-bottom:none;
}
[data-theme="dark"] .Theme021Style01 .p-link a:hover {
    background:var(--blanc);
    color:var(--g-color);
}

.Theme021Style01 .entry-title,
.Theme021Style01 .entry-summary,
.Theme021Style01 .p-link {
    padding:0 20px;
}

/*Theme021Style01 > FORME*/
.Theme021Style01 .p-wrap::before {
  content: "";
  position: absolute;
  top: 00%;
  left: 00%;
  width: 100px;
  height: 100px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent);
  border-radius: 100% 40% 80% 30% / 50% 70% 30% 50%;
  filter: blur(00px);
  transform: translate(-40%, -40%);
  z-index: -1;
}
.Theme021Style01.T50 .p-wrap::before {
  background: none;
}

.Theme021Style01.F2 .p-wrap::before {
  content: "";
  position: absolute;
  top: 7%;
  left: 14%!important;
  width: 180px;
  height: 180px;
  background: color-mix(in srgb, var(--g-color) 20%, transparent);
  filter: blur(00px);
  transform: scale(1.);
  z-index: -1;
}

/*Theme021Style02v1*/
/*Theme021Style02v1 > Bordure*/
.Theme021Style02v1 .p-wrap {
    border-radius:24px;
    background: var(--g-color);
    padding:24px!important;
    margin:0 24px;
    border:2px solid var(--g-color);
}

@media only screen and (max-width: 600px) {
.Theme021Style02v1 .p-wrap {
    margin:0!important;
}}

.Theme021Style02v1 .p-wrap:hover {
    background: var(--blanc);
    border:2px solid var(--g-color);
}
.Theme021Style02v1 .p-wrap:hover .entry-title {
    color: var(--g-color);
}
.Theme021Style02v1 .p-wrap .p-featured {
    border:2px solid var(--blanc);
}

/*WIDTH 1/2*/
@media only screen and (min-width: 600px) {
.Theme021Style02v1 .p-wrap {
    margin:0 2%;
    width:46%!important;
    min-width:46%!important;
    max-width:46%!important;
}}

.Theme021Style02v1 .p-wrap .p-featured {
    border-radius:16px ;
}

/*Theme021Style02v1 > Titre*/
.Theme021Style02v1 .entry-title {
    font-weight:600!important;
    font-size:19px!important;
    line-height:22px!important;
    margin-bottom:0px;
    color:var(--blanc);
}

/*Theme021Style02v2*/
/*Theme021Style02v2 > Bordure*/
.Theme021Style02v2 .p-wrap {
    border-radius:24px;
    background: var(--blanc);
    padding:24px!important;
    margin:0 24px;
    border:2px solid var(--g-color);
}
@media only screen and (max-width: 600px) {
.Theme021Style02v2 .p-wrap {
    margin:0!important;
}}

.Theme021Style02v2 .p-wrap .p-featured {
    border:2px solid var(--g-color);
}

/*WIDTH 1/3*/
@media only screen and (min-width: 600px) {
.Theme021Style02v2 .p-wrap {
    margin:0 1.5%;
    width:30%!important;
    min-width:30%!important;
    max-width:30%!important;
}}

.Theme021Style02v2 .p-wrap .p-featured {
    border-radius:16px ;
}

/*Theme021Style02v2 > Titre*/
.Theme021Style02v2 .entry-title {
    font-weight:600!important;
    font-size:16px!important;
    line-height:18px!important;
    margin-bottom:0px;
    color:var(--g-color)!important;
}

/*Theme021Style02v2 > Texte*/
.Theme021Style02v2 .entry-summary {
    font-weight:400!important;
    font-size:14px!important;
    line-height:16px!important;
    margin-top:4px;
}
.Theme021Style02v2 .entry-summary {
    color: var(--noir)!important;
}


/*Theme021Style03*/
/*Theme021Style03 > Espace*/
@media only screen and (max-width: 600px) {
.Theme021Style03 {
    margin-bottom:24px!important;
}}

/*Theme021Style03 > Fond*/
.Theme021Style03 .p-wrap {
    padding:0;
}

/*Theme021Style03 > Bordure*/
.Theme021Style03 .p-wrap {
    border-radius: 20px
}
.Theme021Style03 .p-wrap .p-featured {
    border-radius: 0 20px 20px 0!important;
    padding-bottom: 80%;
}
@media only screen and (max-width: 600px) {
.Theme021Style03 .p-wrap .p-featured {
    border-radius: 20px 20px 0 0!important;
    margin-bottom:12px;
}}
.Theme021Style03 .p-wrap .p-featured {
    border-radius:20px;
}

/*Theme021Style03 > Titre*/
.Theme021Style03 .entry-title {
    font-weight:600!important;
    font-size:30px!important;
    line-height:32px!important;
    margin-bottom:8px;
}

[data-theme="dark"] .Theme021Style03 .entry-title {
    color:var(--blanc);
}
[data-theme="default"] .Theme021Style03 .entry-title {
    color:var(--g-color)!important;
}
/*Theme021Style03 > Texte*/
.Theme021Style03 .entry-summary {
    font-weight:300!important;
    font-size:20px!important;
    line-height:22px!important;
    margin-bottom:4px;
}

/*Theme021Style03 > Date*/
.Theme021Style03 .p-meta time {
    font-size:18px!important;
    line-height:20px!important;
    font-weight: 500;
}

/*Theme021Style03 > Bouton*/
.Theme021Style03 .p-link a {
    font-weight:400!important;
    font-size:18px!important;
    line-height:20px!important;
    padding: 16px 32px!important;
    margin-top:16px!important;
}
.Theme021Style03 .p-link {
    margin-left:24px;
    margin-top:24px!important;
}

.Theme021Style03 .p-link a::after {
  content: '\2192'!important;
  margin-left:12px;
}
.Theme021Style03 .p-link .rbi-cright {
    display:none;
}

@media only screen and (max-width: 600px) {
.Theme021Style03 .entry-title {
    font-size:20px!important;
    line-height:22px!important;
    margin-bottom:4px!important;
}
.Theme021Style03 .entry-summary {
    font-size:16px!important;
    line-height:18px!important;
    margin-bottom:16px!important;
}
.Theme021Style03 .p-meta time {
    font-size:16px!important;
    line-height:18px!important;
}
.Theme021Style03 .p-link a {
    font-size:14px!important;
    line-height:16px!important;
    padding: 12px 24px!important;
    margin-top:16px!important;
    margin-bottom:24px!important;
}
.Theme021Style03 .p-link {
    margin-bottom:16px!important;
}}

/*ESPACEMENT*/
.Theme021Style03 .p-meta span,
.Theme021Style03 .entry-title,
.Theme021Style03 .entry-summary,
.Theme021Style03 .p-link a {
    padding: 0 24px;
}

.Theme021Style03.Vert .p-wrap {
    background:var(--g-color)!important;
    border:2px solid var(--g-color);
}
.Theme021Style03.Vert .p-meta span,
.Theme021Style03.Vert .entry-title,
.Theme021Style03.Vert .entry-summary {
    color: var(--blanc)!important;
}


.Theme021Style03.Vert .p-link a {
    background:var(--blanc)!important;
    border:2px solid var(--blanc);
    color: var(--g-color)!important;
    border-radius:50px;
}
.Theme021Style03.Vert .p-link a:hover {
    background:var(--g-color)!important;
    border:2px solid var(--blanc);
    color: var(--blanc)!important;
}

.Theme021Style03.Blanc .p-wrap {
    background:var(--blanc)!important;
    border:2px solid var(--g-color);
}
.Theme021Style03.Blanc .p-meta span,
.Theme021Style03.Blanc .entry-title,
.Theme021Style03.Blanc .entry-summary {
    color: var(--g-color)!important;
}

.Theme021Style03.Blanc .p-link a {
    background:var(--blanc)!important;
    border:2px solid var(--g-color);
    color: var(--g-color)!important;
    border-radius:50px!important;
}
.Theme021Style03.Blanc .p-link a:hover {
    background:var(--g-color)!important;
    border:2px solid var(--g-color);
    color: var(--blanc)!important;
}

/* PAGINATION*/
.Theme021Style03 .swiper-pagination-bullet {
    border: 2px solid var(--blanc);
    height:24px!important;
    width:24px!important;
    margin: 0 4px!important;
    margin-top:8px!important;
    border-radius:50px!important;
    opacity:1;
}
.Theme021Style03 .swiper-pagination-bullet:before {
    color:var(--blanc);
    background: var(--transparent);
}

.Theme021Style03 .swiper-pagination-bullet-active {
    background: var(--blanc)!important;
}
.Theme021Style03 .swiper-pagination-bullet-active:before {
    background: var(--blanc)!important;
}

.Theme021Style03.Vert .swiper-pagination-bullet,
.Theme021Style03.Blanc .swiper-pagination-bullet {
    border: 2px solid var(--g-color);
}
.Theme021Style03.Vert .swiper-pagination-bullet:before,
.Theme021Style03.Blanc .swiper-pagination-bullet:before {
    color:var(--g-color);
}

.Theme021Style03.Vert .swiper-pagination-bullet-active,
.Theme021Style03.Blanc .swiper-pagination-bullet-active {
    background: var(--g-color)!important;
}
.Theme021Style03.Vert .swiper-pagination-bullet-active:before,
.Theme021Style03.Blanc .swiper-pagination-bullet-active:before {
    background: var(--g-color)!important;
}


/*Theme021Style03 > FORME*/
.Theme021Style03::before {
  content: "";
  position: absolute;
  top: 00%;
  left: 00%;
  width: 100px;
  height: 100px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent);
  border-radius: 100% 40% 80% 30% / 50% 70% 30% 50%;
  filter: blur(00px);
  transform: translate(-40%, -40%);
  z-index: -1;
}
.Fond1 .Theme021Style03::before {
  background: color-mix(in srgb, var(--blanc) 20%, transparent);
  border-radius: 100% 130% 200% 30% / 40% 100% 30% 50%;
z-index: 1;
 width: 360px;
  height: 400px;
    transform: translate(20%, -16%);
}

/*Theme021Style03 > FORME bas droite*/
.Theme021Style03::after {
  content: "";
  position: absolute;
  bottom: 0%;
  right: 0%;
  width: 140px;
  height: 140px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent)!important;
  border-radius: 100% 30% 80% 100% / 100% 90% 90% 50%;
  filter: blur(0px);
  transform: translate(10%, -30%);
  z-index: -1;
}

/*Theme021Style03 > HOVER*/
.Theme021Style03 .post-carousel {
    overflow:visible;
}
.Theme021Style03 .swiper-slide-active {
    opacity:1;  
}
.Theme021Style03 .swiper-slide-prev,
.Theme021Style03 .swiper-slide-next {
    opacity:0;
}

/*Theme021Style04*/
/*Theme021Style04 > Bordure*/
.Theme021Style04 .p-wrap,
.Theme021Style04 .p-wrap .p-featured {
    border-radius:20px;
}

/*Theme021Style04 > Titre*/
.Theme021Style04 .entry-title {
    font-weight:600!important;
    font-size:16px!important;
    line-height:18px!important;
    margin-bottom:4px;
}
/*Theme021Style04 > Texte*/
.Theme021Style04 .entry-summary {
    font-weight:600!important;
    font-size:16px!important;
    line-height:18px!important;
    margin-bottom:4px;
}

/*Theme021Style04 > Date*/
.Theme021Style04 .p-meta time {
    font-size:13px!important;
    line-height:17px!important;
    font-weight: 500;
}
/*Theme021Style04 > Catégorie*/
.Theme021Style04 .p-category {
    font-weight:600!important;
    font-size:16px!important;
    line-height:18px!important;
    margin-bottom:4px;
}
/*Theme021Style04 > Bouton*/
.Theme021Style04 .p-link {
    font-weight:600!important;
    font-size:16px!important;
    line-height:18px!important;
    margin-bottom:4px;
}

/*Theme021Style05*/
/*Theme021Style05 > Espace*/
.Theme021Style05 {
    margin-top:24px!important;
}
@media only screen and (max-width: 600px) {
.Theme021Style05 {
    margin-top:24px!important;
    margin-bottom:24px!important;
}}

/*Theme021Style05 > Fond*/
.Theme021Style05 .p-wrap {
    padding:0!important;
    border:2px solid var(--g-color);
}

[data-theme="dark"] .Theme021Style05 .p-wrap {
    background: var(--g-color);
}
[data-theme="default"].Theme021Style05 .p-wrap {
    background: var(--noir);
}


@media only screen and (min-width: 600px) {
.Theme021Style05 .p-wrap {
    margin:0 1.5%;
    width:22%!important;
    min-width:22%!important;
    max-width:22%!important;
}}

/*Theme021Style05 > Bordure*/
.Theme021Style05 .p-wrap {
    border-radius:16px;
}
.Theme021Style05 .p-wrap .p-featured {
    border-radius:13px 13px 0 0 ;
}

/*Theme021Style05 > Titre*/
.Theme021Style05 .entry-title {
    font-weight:800!important;
    font-size:16px!important;
    line-height:18px!important;
    margin-top:16px;
    margin-bottom:8px;
}
[data-theme="dark"] .Theme021Style05 .entry-title {
    color:var(--blanc);
}
[data-theme="default"] .Theme021Style05 .entry-title {
    color:var(--g-color);
}

/*Theme021Style05 > Bouton*/
.Theme021Style05 .p-link a {
    font-weight:600!important;
    font-size:12px!important;
    line-height:14px!important;
    margin-bottom:24px;
    padding:6px 4px;
    border:none;
    border-radius:0;
    width:fit-content;
    transition: all 0.6s;
}
.Theme021Style05 .rbi-cright:before {
  content: '\2192'!important;
}
.Theme021Style05 .rbi-cright {
  content: '\2192'!important;
  margin-top: -3px!important;
}


[data-theme="dark"] .Theme021Style05 .p-link a {
    border-bottom:2px solid var(--blanc);
}
[data-theme="default"] .Theme021Style05 .p-link a {
    border-bottom:2px solid var(--g-color);
}

.Theme021Style05 .p-link a:hover {
    padding:10px 14px;
    margin-top:8px;
    border-bottom:none;
}
[data-theme="dark"] .Theme021Style05 .p-link a:hover {
    background:var(--blanc);
    color:var(--g-color);
}

.Theme021Style05 .entry-title,
.Theme021Style05 .entry-summary,
.Theme021Style05 .p-link {
    padding:0 20px;
}

/*Theme021Style05 > FORME*/
.Theme021Style05 .p-wrap::before {
  content: "";
  position: absolute;
  top: 00%;
  left: 00%;
  width: 80px;
  height: 80px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent);
  border-radius: 100% 40% 80% 30% / 50% 70% 30% 50%;
  filter: blur(00px);
  transform: translate(-30%, -35%);
  z-index: -1;
}
.Theme021Style05.F2 .p-wrap::before {
  content: "";
  position: absolute;
  top: -8%;
  left: -8%;
  width: 120px;
  height: 120px;
  background: color-mix(in srgb, var(--g-color) 35%, transparent);
  clip-path: polygon(60% 20% 40%, 100% 30%, 80% 80%, 20% 100%, 0% 50%);
  filter: blur(0px);
  transform: translate(0%, -10%) rotate(12deg);
  z-index: -1;
}

/*Theme021Style06*/
/*Theme021Style06 > Fond*/
.Theme021Style06 .p-wrap {
    padding:0!important;
    background:var(--blanc)!important;
}
.Theme021Style06 .p-wrap .p-content {
    padding-left:0!important;
}
@media only screen and (max-width: 600px) {
.Theme021Style06 .p-wrap .p-content {
    padding-left:32px!important;
}}
/*WIDTH 1/3*/
@media only screen and (min-width: 600px) {
.Theme021Style06 .p-wrap {
    margin:0 1.5%;
    width:30%!important;
    min-width:30%!important;
    max-width:30%!important;
}}

@media only screen and (min-width: 600px) {
.Theme021Style06.T100 .p-wrap {
    margin:0 1.5%;
    width:88%!important;
    min-width:88%!important;
    max-width:88%!important;
    margin-left:24px!important;
}}

/*Theme021Style06 > Bordure*/
.Theme021Style06 .p-wrap {
    border-radius: 16px
}
.Theme021Style06 .p-wrap .p-featured {
    border-radius: 16px 0 0 16px!important;
    padding-bottom: 125% !important;
}
@media only screen and (max-width: 600px) {
.Theme021Style06 .p-wrap .p-featured {
    border-radius: 16px 16px 0 0!important;
}}
/*Theme021Style06 > Titre*/
.Theme021Style06 .entry-title {
    font-weight:600!important;
    font-size:15px!important;
    line-height:17px!important;
    margin-bottom:12px!important;
}
[data-theme="dark"] .Theme021Style06 .entry-title {
    color:var(--noir);
}
[data-theme="default"] .Theme021Style06 .entry-title {
    color:var(--g-color)!important;
}

/*Theme021Style06 > Date*/
.Theme021Style06 .p-meta span {
    font-size:10px!important;
    line-height:12px!important;
    font-weight: 500;
    margin-top:8px!important;
    margin-bottom:0px!important;
}
[data-theme="dark"] .Theme021Style06 .p-meta span {
    color:var(--noir)!important;
}

/*Theme021Style06 > Date*/
.Theme021Style06 .p-meta {
    margin-top:0px!important;
    margin-bottom:8px!important;
}
@media only screen and (max-width: 600px) {
.Theme021Style06 .p-meta {
    margin-top:2px!important;
    margin-bottom:2px!important;
}}

/*Theme021Style06 > Bouton*/
.Theme021Style06 .p-link a {
    font-weight:600!important;
    font-size:12px!important;
    line-height:14px!important;
    padding:4px 8px;
    border:none;
    border-radius:0;
    width:fit-content;
    transition: all 0.6s;
}
@media only screen and (min-width: 600px) {
.Theme021Style06 .p-link a {
    margin-bottom:24px!important;
}
.Sidebar .Theme021Style06 .p-link a {
    margin-bottom:8px!important;
}}

@media only screen and (max-width: 600px) {
.Theme021Style06 .p-link a {
    margin-bottom:12px!important;
}}

[data-theme="dark"] .Theme021Style06 .p-link a {
    color:var(--noir);
}

.Theme021Style06 .rbi-cright:before {
  content: '\2192'!important;
}
.Theme021Style06 .rbi-cright {
  content: '\2192'!important;
  margin-top: -3px!important;
}


[data-theme="dark"] .Theme021Style06 .p-link a {
    border-bottom:2px solid var(--noir);
}
[data-theme="default"] .Theme021Style06 .p-link a {
    border-bottom:2px solid var(--g-color);
}

.Theme021Style06 .p-link a:hover {
    padding:10px 14px;
    margin-top:8px;
    border-bottom:none;
}
[data-theme="dark"] .Theme021Style06 .p-link a:hover {
    background:var(--blanc);
    color:var(--g-color);
}

/*ESPACEMENT*/
.Theme021Style06 .p-meta span,
.Theme021Style06 .entry-title,
.Theme021Style06 .entry-summary,
.Theme021Style06 .p-link a {
    padding-right: 12px;
}

.Theme021Style06.Vert .p-wrap {
    background:var(--g-color)!important;
    border:2px solid var(--g-color);
}
.Theme021Style06.Vert .p-meta span,
.Theme021Style06.Vert .entry-title,
.Theme021Style06.Vert .entry-summary,
.Theme021Style06.Vert .p-link a {
    color: var(--blanc)!important;
}

.Theme021Style06.Blanc .p-wrap {
    background:var(--blanc)!important;
    border:2px solid var(--g-color);
}
.Theme021Style06.Blanc .p-meta span,
.Theme021Style06.Blanc .entry-title,
.Theme021Style06.Blanc .entry-summary,
.Theme021Style06.Blanc .p-link a {
    color: var(--g-color)!important;
}

/*Theme021Style07*/
/*Theme021Style07 > Fond*/
.Theme021Style07 .p-wrap {
    padding:0;
    background:var(--blanc)!important;
    padding:0!important;
    margin: 24px;
    border:4px solid var(--g-color)!important;
}

@media only screen and (min-width: 600px) {
.Theme021Style07 .p-wrap {
    margin:0 2%!important;
    width:46%!important;
    min-width:46%!important;
    max-width:46%!important;
}}
.Theme021Style07 .p-wrap .p-content {
    padding-right:0!important;
    margin:2% 0!important;
}
.Theme021Style07 .p-wrap .list-feat-holder {
    padding-left:0!important;
}

/*Theme021Style07 > Bordure*/
.Theme021Style07 .p-wrap {
    border-radius: 24px;
}
.Theme021Style07 .p-wrap .p-featured {
    border-radius: 0 20px 20px 0!important;
}
@media only screen and (max-width: 600px) {
.Theme021Style07 .p-wrap .p-featured {
    border-radius:  20px 20px 0 0!important;
}}
/*Theme021Style07 > Titre*/
.Theme021Style07 .entry-title {
    font-weight:600!important;
    font-size:18px!important;
    line-height:18px!important;
    margin-bottom:2px;
}
[data-theme="dark"] .Theme021Style07 .entry-title {
    color:var(--noir);
}
[data-theme="default"] .Theme021Style07 .entry-title {
    color:var(--g-color)!important;
}
/*Theme021Style07 > Texte*/
.Theme021Style07 .entry-summary {
    font-weight:300!important;
    font-size:14px!important;
    line-height:16px!important;
    margin-bottom:8px!important;
}
[data-theme="dark"] .Theme021Style07 .entry-summary {
    color:var(--noir);
}

/*Theme021Style07 > Date*/
.Theme021Style07 .p-meta span {
    font-size:14px!important;
    line-height:16px!important;
    font-weight: 500;
    margin-bottom:0!important;
}
[data-theme="dark"] .Theme021Style07 .p-meta span {
    color:var(--noir);
}
/*Theme021Style07 > Bouton*/
.Theme021Style07 .p-link a {
    font-weight:500!important;
    font-size:12px!important;
    line-height:14px!important;
    padding: 12px 24px!important;
    margin-top:4px!important;
    border-radius:50px;
}
[data-theme="dark"] .Theme021Style07 .p-link a {
    color:var(--noir);
}
[data-theme="dark"] .Theme021Style07 .p-link a:hover {
    color:var(--blanc);
}
.Theme021Style07 .p-link a::after {
  content: '\2192'!important;
  margin-left:12px;
}
.Theme021Style07 .p-link .rbi-cright {
    display:none;
}

.Theme021Style07 .p-link {
    margin-left:24px;
    margin-top:12px!important;
}

/*Theme021Style07 > FORME*/
.Theme021Style07 .p-wrap::before {
  content: "";
  position: absolute;
  top: 0%;
  right: 0%;
  width: 160px;
  height: 160px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent);
  border-radius: 80% 60% 50% 20% / 40% 50% 70% 70%;
  filter: blur(00px);
  transform: translate(16%, -22%);
  z-index: -1;
}

/*ESPACEMENT*/
.Theme021Style07 .p-meta span,
.Theme021Style07 .entry-title,
.Theme021Style07 .entry-summary,
.Theme021Style07 .p-link a {
    padding: 0 24px;
}

.Theme021Style07.Vert .p-wrap {
    background:var(--g-color)!important;
    border:2px solid var(--g-color);
}
.Theme021Style07.Vert .p-meta span,
.Theme021Style07.Vert .entry-title,
.Theme021Style07.Vert .entry-summary,
.Theme021Style07.Vert .p-link a {
    color: var(--blanc)!important;
}

.Theme021Style07.Blanc .p-wrap {
    background:var(--blanc)!important;
    border:2px solid var(--g-color);
}
.Theme021Style07.Blanc .p-meta span,
.Theme021Style07.Blanc .entry-title,
.Theme021Style07.Blanc .entry-summary,
.Theme021Style07.Blanc .p-link a {
    color: var(--g-color)!important;
}

/*CATEGORIE*/
/*CATEGORIE > Titre*/
.category .Titre.Blanc {
    margin-top: 40px!important;
    width:fit-content!important;
    margin: 0 auto;
}

.category .Titre.Blanc h1 {
    font-size: 58px;
    line-height: 64px;
}
@media only screen and (max-width: 600px) {
.category .Titre.Blanc h1 {
    font-size: 40px;
    line-height: 44px;
}}

[data-theme="dark"].category .Titre.Blanc h1 {
    color:var(--blanc);
}

[data-theme="default"].category .Titre.Blanc h1 {
    color:var(--noir);
}

.category .Titre.Blanc h1:before {
    content: "";
    position: absolute;
    top: 00%;
    left: 00%;
    width: 100px;
    height: 100px;
    background: 
 color-mix(in srgb, var(--g-color) 30%, transparent);
    border-radius: 100% 40% 80% 30% / 50% 70% 30% 50%;
    filter: blur(00px);
    transform: translate(-40%, -20%);
    z-index: -1;
}
@media only screen and (max-width: 600px) {
.category .Titre.Blanc h1:before {
    transform: translate(-40%, 10%);
}}


/*IMAGE DES ARTICLE*/
.ImageArticle::after {
  content: "";
  position: absolute;
  top: 0%;
  left: 0%;
  width: 140px;
  height: 140px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent)!important;
  border-radius: 70% 80% 40% 70% / 70% 40% 90% 50%;
  filter: blur(0px);
  transform: translate(-26%, -28%);
  z-index: -1;
}
.ImageArticle .s-feat-outer {
    margin-bottom: 0px!important;
}

.ImageArticle {
  padding-right:20px;
}
.ImageArticle img {
  border-radius:24px!important;
}

/* CATEGORIES */
.category .blog-content .p-wrap {
  padding:0!important;
  border:3px solid var(--g-color);
}
@media only screen and (min-width: 600px) {
.category .blog-content .p-wrap {
    margin:0 2%!important;
    width:46%!important;
    min-width:46%!important;
    max-width:46%!important;
}}
.category .blog-content .p-wrap {
    border-radius:16px;
}
.category .blog-content .p-wrap .p-featured {
    border-radius:14px 14px 0 0 ;
}
.category .blog-content .p-wrap .entry-title {
    font-weight:800!important;
    font-size:20px!important;
    line-height:22px!important;
    margin-top:16px;
    margin-bottom:8px;
}
[data-theme="dark"] .category .blog-content .p-wrap .entry-title {
    color:var(--blanc);
}
[data-theme="default"] .category .blog-content .p-wrap .entry-title {
    color:var(--g-color);
}
.category .blog-content .p-wrap .entry-summary {
    font-weight:600!important;
    font-size:14px!important;
    line-height:18px!important;
    margin-bottom:12px;
}
.category .blog-content .p-wrap .p-link a {
    font-weight:600!important;
    font-size:14px!important;
    line-height:16px!important;
    margin-bottom:24px;
    padding:8px 4px;
    border:none;
    border-radius:0;
    border-bottom:3px solid var(--g-color);
    width:fit-content;
    transition: all 0.6s;
}
.category .blog-content .p-wrap .rbi-cright:before {
  content: '\2192'!important;
}
.category .blog-content .p-wrap .rbi-cright {
  content: '\2192'!important;
  margin-top: -3px!important;
}
[data-theme="dark"] .category .blog-content .p-wrap .p-link a {
    border-bottom:3px solid var(--blanc);
}
[data-theme="default"] .category .blog-content .p-wrap .p-link a {
    border-bottom:3px solid var(--g-color);
}
.category .blog-content .p-wrap .p-link a:hover {
    padding:14px 18px;
    margin-top:8px;
    border-bottom:none;
}
[data-theme="dark"] .category .blog-content .p-wrap .p-link a:hover {
    background:var(--blanc);
    color:var(--g-color);
}
.category .blog-content .p-wrap .entry-title,
.category .blog-content .p-wrap .entry-summary,
.category .blog-content .p-wrap .p-link {
    padding:0 20px;
}
.category .blog-content .p-wrap .p-wrap::before {
  content: "";
  position: absolute;
  top: 00%;
  left: 00%;
  width: 100px;
  height: 100px;
  background: color-mix(in srgb, var(--g-color) 30%, transparent);
  border-radius: 100% 40% 80% 30% / 50% 70% 30% 50%;
  filter: blur(00px);
  transform: translate(-40%, -40%);
  z-index: -1;
}
.category .p-categories,
.category .p-meta {
  display:none;
}


/* ============================================================
   COUCHE CUSTOM (TDM + POST + MENU)
   (contenu original de style-theme021-custom-styles.css)
============================================================ */

/* --- POLICES (font harmonization) --- */
.entry-title,
.entry-title a,
.heading-title,
.heading-title a,
.elementor-heading-title,
.elementor-heading-title a,
body.single-post .s-title,
h1, h2, h3, h4, h5, h6 {
	font-family: var(--cs-heading-font)!important;
}

p,
.entry-summary,
time {
	font-family: var(--cs-body-font)!important;
}


/* ============================================================
   BLOC 1 — TDM (Table des matières, single post only)
   ============================================================ */

/* En-tête de la TDM */
body.single-post .ruby-table-contents .toc-header {
	margin-bottom: 10px;
	padding-bottom: 0;
}
body.single-post .rbtoc {
    padding: 0!important;
    box-shadow: none!important;
}
body.single-post .ruby-table-contents .toc-header span {
	font-size: 32px;
	font-weight: 700;
	font-family: var(--cs-heading-font);
	text-transform: uppercase;
	padding-bottom: 6px;
	color: var(--noir);
}
body.single-post .ruby-table-contents .toc-header .rbi-read:before {
	content: "\25CB";
	font-family: initial;
	font-size: 34px;
	color: var(--g-color) !important;
	padding-right: 8px;
}

/* Liste des items */
body.single-post .ruby-table-contents .inner {
	margin-top: 0;
	padding-top: 0;
	column-count: 2;
	counter-reset: toc-counter;
}
body.single-post .ruby-table-contents .inner > * {
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
}
body.single-post .ruby-table-contents .inner a {
	position: relative;
	display: block;
	padding: 8px 8px 8px 23px;
	margin-bottom: 4px;
	font-size: 14px;
	line-height: 16px;
	font-weight: 500;
	text-decoration: none !important;
	text-shadow: none !important;
	border: 2px solid transparent;
	border-radius: 8px;
	transition: all .2s ease;
}
body.single-post .ruby-table-contents .inner a:hover {
	color: var(--g-color) !important;
	border-color: var(--g-color);
}
body.single-post .ruby-table-contents .inner a::before {
	content: "";
	position: absolute;
	left: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background: var(--g-color);
	border-radius: 24px;
}
body.single-post .ruby-table-contents .inner a::after {
	display: none !important;
}

/* Chevron toggle */
body.single-post .ruby-table-contents .ruby-toc-toggle i:before {
	content: "\21E9" !important;
	font-family: initial !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: var(--g-color) !important;
}


/* ============================================================
   BLOC 2 — POST (Single article)
   ============================================================ */

/* Image à la une */
body.single-post .s-feat-outer {
	width: 100%;
	margin-bottom: 28px;
}
body.single-post .s-feat img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 24px;
}

/* Catégories */
body.single-post .s-cats {
	margin-bottom: 14px;
}
body.single-post .s-cats a,
body.single-post .s-cats .p-category,
body.single-post .s-cats .meta-category a {
	display: inline-block;
	padding: 5px 12px;
	border: 2px solid var(--g-color);
	border-radius: 24px;
	font-size: 12px;
	font-weight: 700;
	text-transform: initial;
	letter-spacing: 1px;
	text-decoration: none;
}

/* Titre H1 article */
body.single-post .s-title {
	font-size: 42px;
	line-height: 1.15;
	font-weight: 700;
	font-family: var(--cs-heading-font);
	text-transform: initial;
	margin: 0px 0 12px;
}

/* Corps article */
body.single-post .entry-content.rbct {
	border: 2px solid color-mix(in srgb, var(--noir) 10%, transparent);
	border-radius: 24px;
	padding: 28px 34px;
	box-shadow: 0 4px 16px color-mix(in srgb, var(--noir) 6%, transparent);
	background: var(--blanc);
}

/* Sous-titres */
body.single-post .entry-content.rbct h2,
body.single-post .entry-content.rbct h3 {
	font-weight: 700;
	font-family: var(--cs-heading-font);
	color: var(--noir);
	border-left: 6px solid var(--g-color);
	padding-left: 14px;
	margin-top: 32px;
}
body.single-post .entry-content.rbct h2 { font-size: 26px; }
body.single-post .entry-content.rbct h3 { font-size: 21px; }

/* Paragraphes & listes */
body.single-post .entry-content.rbct p,
body.single-post .entry-content.rbct ol li,
body.single-post .entry-content.rbct ul li {
	font-size: 17px;
	line-height: 1.75;
	color: #333;
}

/* Citations */
body.single-post .entry-content.rbct blockquote {
	border-left: 6px solid var(--g-color);
	background: color-mix(in srgb, var(--g-color) 6%, var(--blanc));
	padding: 18px 24px;
	margin: 24px 0;
	font-style: normal;
	border-radius: 24px;
}

/* Liens inline */
body.single-post .entry-content.rbct a {
	color: var(--g-color);
	text-decoration: underline;
	text-underline-offset: 3px;
}


/* ============================================================
   BLOC 3 — MENU (Header sitewide)
   ============================================================ */
#site-header {
	border-bottom: 2px solid var(--g-color);
}
#site-header .logo-sec-inner {
	padding: 8px 0;
}
#site-header .main-menu > li > a {
	font-weight: 700;
	font-family: var(--cs-heading-font);
	letter-spacing: 0.02em;
	text-transform: initial;
}


/* ============================================================
   SEARCH (light + dark) — Theme 021
   ============================================================ */

/* light mode wrapper */
.rb-search-form .search-form-inner {
  display: flex;
  align-items: center;
  background: var(--blanc);
  border-radius: 16px;
  padding: 6px 10px;
  border: 1px solid color-mix(in srgb, var(--noir) 12%, transparent);
  transition: 0.3s ease;
}

/* search icon */
.search-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  color: var(--g-color);
  transition: 0.2s ease;
}
.rbi-search:before {
  content: "\e946";
}

/* input */
.search-text {
  flex: 1;
}
.search-text input.field {
  border: none;
  outline: none;
  width: 100%;
  padding: 10px;
  background: transparent;
  color: var(--noir);
  font-family: var(--cs-body-font);
}
.search-text input.field::placeholder {
  color: color-mix(in srgb, var(--noir) 55%, transparent);
}

/* submit button (always circular) */
.rb-search-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--g-color);
  border-radius: 16px;
  width: 38px;
  height: 38px;
  margin-left: 6px;
  cursor: pointer;
  transition: 0.2s ease;
}
.rbi-cright:before {
  content: "\276F";
  font-family: initial;
  color: #fff;
  font-size: 14px;
}
.rb-search-submit:hover {
  transform: scale(1.08);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

/* focus state */
.search-form-inner:focus-within {
  border-color: var(--g-color);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--g-color) 18%, transparent);
}

/* dark mode overrides */
[data-theme="dark"] .rb-search-form .search-form-inner {
  background: #1a1a1a;
  border: 1px solid #2a2a2a;
}
[data-theme="dark"] .search-text input.field {
  color: #fff;
}
[data-theme="dark"] .search-text input.field::placeholder {
  color: #aaa;
}
[data-theme="dark"] .rbi-search {
  color: #fff;
  opacity: 0.85;
}
[data-theme="dark"] .rb-search-submit {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05);
}
[data-theme="dark"] .search-form-inner:focus-within {
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.08);
}


/* --- HEADER SEARCH (icon + dropdown) --- */
.navbar-right {
	background: linear-gradient(320deg, var(--blanc), color-mix(in srgb, var(--g-color) 8%, var(--blanc)));
	padding: 8px 20px !important;
	border-radius: 50px !important;
}
.logo-sec-right .wnav-icon {
	color: var(--noir);
	font-size: 18px;
	transition: 0.2s ease;
}
.logo-sec-right .wnav-icon:hover {
	color: var(--g-color) !important;
}
.header-dropdown {
	margin-top: 12px;
	border-radius: 24px;
	padding: 0px;
	background: var(--blanc);
	box-shadow: 0 12px 32px color-mix(in srgb, var(--noir) 12%, transparent);
}
.w-header-search .header-search-form {
	padding: 0!important;
}
[data-theme="dark"] .navbar-right {
	background: linear-gradient(320deg, var(--noir), color-mix(in srgb, var(--g-color) 16%, var(--noir)));
}
[data-theme="dark"] .logo-sec-right .wnav-icon {
	color: var(--blanc);
}
[data-theme="dark"] .header-dropdown {
	background: var(--noir);
}
