/* ============================================================
   Theme    : FOXIZ
   Variante : 026
   Version  : 1.1
   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=Crimson+Text:wght@400;600;700&family=Karla:wght@400;500;600;700&display=swap');

body {
    --cs-heading-font: "Crimson Text", Georgia, serif;
    --cs-body-font: "Karla", system-ui, sans-serif;
}


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

/*FOND1*/
.Fond1 {
background: color-mix(in srgb, var(--g-color) 24%, transparent)!important;
}

/*TITRE1*/
/*Titre1 > Titre*/
.Titre1 .heading-title,
.category .Titre1 .elementor-heading-title {
    font-size:68px;
    line-height:72px;
    font-weight: 800;
    text-transform: uppercase;
    text-shadow: 4px 2px 0 color-mix(in srgb, var(--g-color) 28%, transparent);
}

.Titre1.Mini .heading-title,
.category .Titre1.Mini .elementor-heading-title {
    text-transform: initial!important;
}

/*Titre1 > Titre*/
.Titre2 .heading-title {
    font-size:28px;
    line-height:30px;
    font-weight: 600;
    text-shadow: 2px 2px 0 color-mix(in srgb, var(--g-color) 28%, transparent);
}
.Titre2.Petit .elementor-heading-title {
    font-size:24px;
    line-height:24px;
    font-weight: 800;
    text-shadow: 2px 1px 0 color-mix(in srgb, var(--g-color) 16%, transparent);
}

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

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

.Titre1.Petit .heading-title {
    font-size:34px;
    line-height:38px;
    text-transform: uppercase;
    text-shadow: 1px 1px 0 color-mix(in srgb, var(--g-color) 28%, transparent);
}
@media only screen and (max-width: 600px) {
.Titre1.Petit .heading-title {
    font-size:24px;
    line-height:26px;
}}
.Titre1.Milieu .heading-title {
    text-align: center;
    margin:0 auto;
}
/*Titre1 > Bouton*/
.Titre1 .heading-tagline span {
    font-weight:600!important;
    font-size:22px!important;
    line-height:18px!important;
    border-radius:50px;
    background:var(--g-color);
    padding: 18px 42px;
}
.Titre1 .heading-tagline .rbi-cright {
    display:none;
}

/*Texte1 > Titre*/
.Texte1 p {
    font-size:20px;
    line-height: 22px;
    font-weight: 300!important;
    margin-top:4px;
}
.Texte1.Milieu p {
    text-align: center;
    width:72%;
    margin:0 auto;
}


/*BOUTON*/
/*BOUTON > TEXTE*/
.Bouton1 .elementor-button {
    background-color:var(--g-color)!important;
    color:var(--blanc);
    border: 2px solid var(--g-color);
    box-shadow: 0 8px 0 color-mix(in srgb, var(--g-color) 40%, transparent);
    border-radius:0;
    font-size:20px;
    line-height: 22px;
    font-weight:400!important;
    text-transform: uppercase!important;
    padding: 20px 40px;
    border-radius: 50px;
}
/*BOUTON > HOVER*/
.Bouton1 .elementor-button:hover {
    background:var(--g-color);
    color:var(--blanc);
}


/*Theme026Style01*/
/*Theme026Style01 > Fond*/
.Theme026Style01 .p-gradient .overlay-inner {
    background: color-mix(in srgb, var(--noir) 40%, transparent)!important;
}
.Theme026Style01 .p-content.overlay-inner.overlay-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-align: center;
}

.Theme026Style01 .entry-title, 
.Theme026Style01 .entry-summary {
  max-width:80%!important;
}

/*Theme026Style01 > Bordure*/
.Theme026Style01 .p-wrap {
    padding:0!important;
}
.Theme026Style01 .p-wrap,
.Theme026Style01 .p-wrap .p-featured,
.Theme026Style01 .p-gradient .overlay-inner{
    border-radius:24px!important;
}

.Theme026Style01 .p-wrap  {
    box-shadow: 0 0 24px color-mix(in srgb, var(--noir) 40%, transparent);
    padding:0;
}

/*Theme026Style01 > Titre*/
.Theme026Style01 .entry-title {
    font-weight:600!important;
    font-size:48px!important;
    line-height:50px!important;
    margin-bottom:8px;
}
/*Theme026Style01 > Texte*/
.Theme026Style01 .entry-summary {
    font-weight:300!important;
    font-size:20px!important;
    line-height:22px!important;
    margin-bottom:16px!important;
}
/*Theme026Style01 > Catégorie*/
.Theme026Style01 .p-category {
    font-weight:600!important;
    font-size:66px!important;
    line-height:70px!important;
    padding-bottom:4px;
    text-decoration: underline white;
    color:var(--g-color)!important;  
}
.Theme026Style01 .p-categories {
    max-height: fit-content;
    margin-bottom:24px;
}

/*Theme026Style01 > Bouton*/
.Theme026Style01 .p-link a {
    font-weight:600!important;
    font-size:24px!important;
    line-height:26px!important;
    margin-top:16px!important;
    border-radius:50px;
    background:var(--g-color);
    padding: 24px 48px;
}

.Theme026Style01 .p-link .rbi-cright {
    display:none;
}


/*Theme026Style02*/
/*Theme026Style02 > Fond*/
.Theme026Style02 .p-gradient .overlay-inner {
    background: color-mix(in srgb, var(--noir) 40%, transparent)!important;
    border-radius:18px;
}
.Theme026Style02 .p-wrap,
.Theme026Style02 .p-wrap img {
    border-radius:18px;
}
/*Theme026Style02 > Ombre*/
.Theme026Style02 .p-wrap img {
    box-shadow: 0 0 24px color-mix(in srgb, var(--noir) 40%, transparent);
}
.Theme026Style02 .overlay-holder,
.Theme026Style02 .overlay-holder .p-featured{
    overflow: visible;
}

.Theme026Style02 .p-content.overlay-inner.overlay-text {
  display: flex;
  flex-direction: column;
  justify-content: end;
  align-items: start;
  height: 100%;
  text-align: left;
}

/*Theme026Style02 > Titre*/
.Theme026Style02 .entry-title {
    font-weight:600!important;
    font-size:30px!important;
    line-height:28px!important;
    margin-bottom:4px;
    max-width:90%!important;
}
.Theme026Style02.Petit .entry-title {
    font-size:22px!important;
    line-height:21px!important;
    max-width:98%!important;
}

.Theme026Style02.Petit .overlay-inner {
    padding: 18px;
}

/*Theme026Style02 > Date*/
.Theme026Style02 .p-meta time {
    font-size:16px!important;
    line-height:18px!important;
    font-weight: 500;
}
.Theme026Style02.Petit .p-meta time {
    font-size:14px!important;
    line-height:16px!important;
    font-weight: 500;
}

@media only screen and (max-width: 600px) {
/*TITRE1*/
/*Titre1 > Titre*/
.Titre1 .heading-title {
    font-size:40px;
    line-height:42px;
}

/*Titre1 > Bouton*/
.Titre1 .heading-tagline span {
    font-size:18px!important;
    line-height:22px!important;
    padding: 18px 42px;
}

/*Texte1 > Titre*/
.Texte1 p {
    font-size:17px;
    line-height: 19px;
    margin-top:4px;
}
.Texte1.Milieu p {
    width:72%;
}

/*BOUTON*/
/*BOUTON > TEXTE*/
.Bouton1 .elementor-button {
    font-size:16px;
    line-height: 18px;
    padding: 12px 24px;
    margin-bottom:24px;
}

.Theme026Style01 .entry-title, 
.Theme026Style01 .entry-summary {
  max-width:96%!important;
}

/*Theme026Style01 > Titre*/
.Theme026Style01 .entry-title {
    font-size:20px!important;
    line-height:22px!important;
}
/*Theme026Style01 > Texte*/
.Theme026Style01 .entry-summary {
    font-size:16px!important;
    line-height:17px!important;
}
/*Theme026Style01 > Catégorie*/
.Theme026Style01 .p-category {
    font-size:32px!important;
    line-height:34px!important;
}

/*Theme026Style01 > Bouton*/
.Theme026Style01 .p-link a {
    font-size:18px!important;
    line-height:20px!important;
    padding: 12px 32px;
}

/*Theme026Style02*/
/*Theme026Style02 > Titre*/
.Theme026Style02 .entry-title {
    font-size:20px!important;
    line-height:20px!important;
    max-width:90%!important;
}
.Theme026Style02.Petit .entry-title {
    font-size:13px!important;
    line-height:15px!important;
}

/*Theme026Style02 > Date*/
.Theme026Style02 .p-meta time {
    font-size:16px!important;
    line-height:18px!important;
}
.Theme026Style02.Petit .p-meta time {
    font-size:10px!important;
    line-height:12px!important;
}}



@media only screen and (max-width: 600px) {
/*Theme026Style01 > Texte*/
.Theme026Style01 .p-wrap {
    height: 320px!important;
    min-height: 320px!important;
    max-height: 320px!important;
    margin-bottom:8px;
}
.Theme026Style02 .p-wrap {
    height: 300px!important;
    min-height: 300px!important;
    max-height: 300px!important;
    margin-bottom:8px;
}

.Theme026Style01 .block-inner,
.Theme026Style02 .block-inner {
    display: grid!important;
}

.Theme026Style02 .p-featured {
    padding-bottom: 90%!important;
}}

/*ARTICLE*/
.ArticleHeader .s-title {
    text-shadow: 2px 1px 0 color-mix(in srgb, var(--g-color) 22%, transparent);
}

.ArticleHeader .p-categories {
    font-weight:100!important;
    font-size:12px!important;
    line-height:14px!important;
    border-radius:50px;
    background:var(--g-color);
    color:var(--blanc);
    padding: 16px 32px;
    width:fit-content;
    margin:0 auto;
    margin-bottom:16px!important;
}
.ImageArticle .s-feat-outer {
    margin-bottom: 0!important;
}

/*HOVER*/
.p-wrap {
  transition: transform 0.3s ease;
}
.p-wrap:hover {
  transform: rotate(1.8deg) scale(1.02);
}


/* CATEGORIE*/
.category h1 {
    font-size:4rem!important;
    line-height:4rem!important;
}
.category .blog-content .grid-box .entry-title,
.category .blog-content .grid-box .p-meta {
    position: absolute;
    left: 0;
    right: 0;
    padding: 12px 16px;
    color: #fff;
}
.category .blog-content .p-wrap  .entry-title {
    font-weight:600!important;
    font-size:30px!important;
    line-height:32px!important;
    margin-bottom:0px;
    max-width:90%!important;
    bottom: 52px!important;
    z-index:10;
}
.category .blog-content .grid-box .p-meta {
    bottom: 12px;
    z-index:100;
}
.category .blog-content .p-meta span {
    font-size:18px!important;
    line-height:20px!important;
    max-width:90%!important;
    color:var(--blanc);
}
.category .blog-content .grid-box {
    position: relative;
    overflow: hidden;
    height:340px;
    border-radius:24px!important;
    box-shadow: 0 0 24px color-mix(in srgb, var(--noir) 40%, transparent);
    padding-bottom: 0;
}
.category .blog-content .grid-box .feat-holder .p-featured {
    min-height: 100%!important;
    z-index: 1!important;
    border-radius:24px!important;
}
.category .blog-content .grid-box .feat-holder {
    z-index: 10;
    height: 100%;
    min-height: 100%;
    border-radius:24px!important;
    
}
.category .blog-content .grid-box .feat-holder::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,rgba(0,0,0,0.75),rgba(0,0,0,0));
    z-index: 1;
}
.category .blog-content .p-wrap .p-categories,
.category .blog-content .p-wrap .entry-summary {
    display:none;
}


/* ============================================================
   COUCHE CUSTOM (TDM + POST + MENU)
   (contenu original de style-theme026-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)
   ============================================================ */

/* Conteneur */
body.single-post .ruby-table-contents {
	border: 3px solid var(--g-color);
	border-radius: 0px;
	padding: 16px 18px;
	box-shadow: 6px 6px 0 0 var(--noir);
	background: var(--blanc);
}

/* En-tête de la TDM */
body.single-post .ruby-table-contents .toc-header {
	margin-bottom: 10px;
	padding-bottom: 0;
}
body.single-post .ruby-table-contents .toc-header span {
	font-size: 38px;
	font-weight: 800;
	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: "\25A6";
	font-family: initial;
	font-size: 28px;
	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: 4px  4px 4px 24px;
	margin-bottom: 0;
	color: var(--noir) !important;
	font-size: 16px;
	line-height: 18px;
	font-weight: 500;
	text-decoration: none !important;
	text-shadow: none !important;
	border: 3px solid transparent;
	border-radius: 0px;
	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: 0px;
}
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: "\23F7" !important;
	font-family: initial !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	color: var(--g-color) !important;
	margin-top: -4px;
}


/* ============================================================
   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;
	border:10px solid var(--g-color);
}

/* 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;
	border: 3px solid var(--g-color);
	border-radius: 0px;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-decoration: none;
}

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

/* Sous-titres */
/* H2 — layout 13 brutaliste (badge accent + ombre offset noire) */
body.single-post .entry-content.rbct h2 {
	display: inline-block;
	font-size: 30px;
	FONT-VARIANT: JIS83;
	font-family: var(--cs-heading-font);
	color: var(--blanc);
	text-transform: initial;
	padding: 10px 24px;
	margin-top: 36px;
	margin-bottom: 18px;
	background: var(--g-color);
	box-shadow: 4px 4px 0 0 var(--noir);
}

/* H3 — layout 1 (encadrement skew avec bordures verticales accent) */
body.single-post .entry-content.rbct h3 {
	position: relative;
	display: inline-block;
	font-size: 21px;
	font-weight: 800;
	font-family: var(--cs-heading-font);
	text-transform: initial;
	padding: 4px 16px;
	margin-top: 28px;
	margin-bottom: 14px;
}
body.single-post .entry-content.rbct h3::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transform: skewX(-15deg);
	border-left: 3px solid var(--g-color);
	border-right: 3px solid var(--g-color);
	pointer-events: none;
}

/* 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;
}

/* 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: 0px;
}

/* 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 .logo-sec-inner {
	padding: 4px 0;
}
#site-header .main-menu > li > a {
	font-weight: 800;
	font-family: var(--cs-heading-font);
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

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

/* light mode wrapper */
.rb-search-form .search-form-inner {
  display: flex;
  align-items: center;
  background: var(--blanc);
  border-radius: 50px;
  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: 50%;
  width: 38px;
  height: 38px;
  margin-left: 6px;
  cursor: pointer;
  transition: 0.2s ease;
}
.rbi-cright:before {
  content: "\27A4";
  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) --- */
.logo-sec-right .icon-holder {
	width: 40px;
	height: 40px;
	background: var(--blanc);
	border: 3px solid var(--noir);
	border-radius: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 4px 4px 0 0 var(--noir);
	transition: 0.15s ease;
}
.logo-sec-right .wnav-icon {
	color: var(--noir);
	font-size: 18px;
	text-shadow: 2px 2px 0 color-mix(in srgb, var(--g-color) 30%, transparent);
}
.logo-sec-right .icon-holder:hover {
	background: var(--g-color);
	transform: translate(2px, 2px);
	box-shadow: 2px 2px 0 0 var(--noir);
}
.logo-sec-right .icon-holder:hover .wnav-icon {
	color: var(--blanc);
	text-shadow: none;
}
.header-dropdown {
	margin-top: 12px;
	border: 3px solid var(--noir);
	border-radius: 0;
	padding: 0px;
	background: var(--blanc);
	box-shadow: 6px 6px 0 0 var(--noir);
}
.w-header-search .header-search-form {
	padding: 0!important;
}
[data-theme="dark"] .logo-sec-right .icon-holder {
	background: var(--noir);
	border-color: var(--blanc);
	box-shadow: 4px 4px 0 0 var(--blanc);
}
[data-theme="dark"] .logo-sec-right .wnav-icon {
	color: var(--blanc);
}
[data-theme="dark"] .header-dropdown {
	background: var(--noir);
	border-color: var(--blanc);
	box-shadow: 6px 6px 0 0 var(--blanc);
}
