.elementor-3004 .elementor-element.elementor-element-a1b2c3d4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:72px;--padding-bottom:0px;--padding-left:80px;--padding-right:80px;}.elementor-3004 .elementor-element.elementor-element-a1b2c3d4:not(.elementor-motion-effects-element-type-background), .elementor-3004 .elementor-element.elementor-element-a1b2c3d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-ln_surface );}.elementor-widget-breadcrumbs{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3004 .elementor-element.elementor-element-brd00001{color:#999999;}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-3004 .elementor-element.elementor-element-ttl00001 .elementor-heading-title{font-size:44px;font-weight:800;line-height:1.18em;letter-spacing:-0.5px;color:#111111;}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-bottom:calc(20px/2);}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-top:calc(20px/2);}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:calc(20px/2);margin-left:calc(20px/2);}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-items.elementor-inline-items{margin-right:calc(-20px/2);margin-left:calc(-20px/2);}body.rtl .elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{left:calc(-20px/2);}body:not(.rtl) .elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{right:calc(-20px/2);}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-icon i{color:#C9A227;font-size:14px;}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-icon svg{fill:#C9A227;--e-icon-list-icon-size:14px;}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-icon{width:14px;}.elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-text, .elementor-3004 .elementor-element.elementor-element-meta0001 .elementor-icon-list-text a{color:#888888;}.elementor-widget-theme-post-featured-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3004 .elementor-element.elementor-element-img00001 img{width:100%;filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );border-radius:12px 12px 0px 0px;}.elementor-3004 .elementor-element.elementor-element-main0001{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:80px;--padding-left:80px;--padding-right:80px;}.elementor-3004 .elementor-element.elementor-element-main0001:not(.elementor-motion-effects-element-type-background), .elementor-3004 .elementor-element.elementor-element-main0001 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-3004 .elementor-element.elementor-element-col00001{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:48px;--padding-bottom:0px;--padding-left:0px;--padding-right:56px;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3004 .elementor-element.elementor-element-cnt00001{color:#2D2D2D;}.elementor-3004 .elementor-element.elementor-element-col00002{--display:flex;--position:sticky;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:48px;--padding-bottom:48px;--padding-left:40px;--padding-right:32px;top:0px;}.elementor-3004 .elementor-element.elementor-element-col00002:not(.elementor-motion-effects-element-type-background), .elementor-3004 .elementor-element.elementor-element-col00002 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F7F4;}body:not(.rtl) .elementor-3004 .elementor-element.elementor-element-col00002{left:0px;}body.rtl .elementor-3004 .elementor-element.elementor-element-col00002{right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-3004 .elementor-element.elementor-element-sh100001 .elementor-heading-title{color:#C9A227;}.elementor-3004 .elementor-element.elementor-element-cat00001 .elementor-icon-list-icon{font-size:14px;}.elementor-3004 .elementor-element.elementor-element-sh200001 .elementor-heading-title{color:#C9A227;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3004 .elementor-element.elementor-element-rcnt0001{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-3004 .elementor-element.elementor-element-rcnt0001 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-3004 .elementor-element.elementor-element-rcnt0001:after{content:"0.66";}.elementor-3004 .elementor-element.elementor-element-rcnt0001 .elementor-post__thumbnail__link{width:100%;}.elementor-3004 .elementor-element.elementor-element-rcnt0001 .elementor-post__meta-data span + span:before{content:"///";}.elementor-3004 .elementor-element.elementor-element-rcnt0001.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-3004 .elementor-element.elementor-element-rcnt0001.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-3004 .elementor-element.elementor-element-rcnt0001.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-3004 .elementor-element.elementor-element-btn00001 .elementor-button{background-color:#0A5C2A;fill:#FFFFFF;color:#FFFFFF;border-radius:6px 6px 6px 6px;}@media(max-width:767px){.elementor-3004 .elementor-element.elementor-element-rcnt0001 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-3004 .elementor-element.elementor-element-rcnt0001:after{content:"0.5";}.elementor-3004 .elementor-element.elementor-element-rcnt0001 .elementor-post__thumbnail__link{width:100%;}}@media(min-width:768px){.elementor-3004 .elementor-element.elementor-element-a1b2c3d4{--width:100%;}}/* Start custom CSS *//* =========================================================
   LONASE — SINGLE POST PREMIUM (CSS only)
   Objectif : améliorer la page single sans JSON, sans widgets.
   Compatible Astra/Hello/Elementor et la plupart des thèmes.
   ========================================================= */

/* --------- Variables --------- */
:root{
  --lonase-green:#0b6b3a;
  --lonase-green-2:#0b3b22;
  --lonase-gold:#ffd100;
  --lonase-bg:#f4f7f5;
  --lonase-text:#1f2a24;
  --lonase-muted:rgba(0,0,0,.60);
  --lonase-card:#ffffff;
  --lonase-border:rgba(0,0,0,.07);
  --lonase-radius:18px;
  --lonase-shadow: 0 18px 60px rgba(0,0,0,.08);
}

/* --------- Global (page single) --------- */
body.single-post{
  background: var(--lonase-bg);
}
body.single-post .site-content,
body.single-post .content-area{
  background: transparent;
}

/* Largeur confortable (si ton thème est trop large) */
body.single-post .site-main,
body.single-post .content-area{
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 18px;
}

/* --------- HERO (en haut de l’article) ---------
   Cible la zone titre + meta + image selon thèmes courants.
*/
body.single-post article.post,
body.single-post article.type-post{
  margin-top: 20px;
}

/* Carte globale article */
body.single-post article.post,
body.single-post article.type-post{
  background: transparent;
}

/* Titre */
body.single-post h1.entry-title,
body.single-post .elementor-widget-theme-post-title h1,
body.single-post .elementor-post__title h1{
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.05;
  font-size: clamp(32px, 3.6vw, 54px);
  color: var(--lonase-green-2);
  margin: 18px 0 10px;
}

/* Meta (date / auteur / catégories) */
body.single-post .entry-meta,
body.single-post .post-meta,
body.single-post .elementor-post-info,
body.single-post .elementor-widget-theme-post-info{
  color: rgba(0,0,0,.55);
  font-size: 13px;
}

/* Badge catégorie (si ton thème affiche les catégories au-dessus) */
body.single-post .cat-links a,
body.single-post .entry-categories a,
body.single-post a[rel="category tag"]{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(11,107,58,.10);
  border: 1px solid rgba(11,107,58,.18);
  color: var(--lonase-green);
  text-decoration: none;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .02em;
  margin: 0 6px 6px 0;
}

/* Image mise en avant (featured image) = effet premium */
body.single-post .post-thumbnail,
body.single-post .elementor-widget-theme-post-featured-image,
body.single-post .wp-post-image{
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 26px 70px rgba(0,0,0,.12);
}

/* si c'est une <img> directe */
body.single-post img.wp-post-image,
body.single-post .post-thumbnail img{
  width: 100%;
  height: auto;
  display: block;
}

/* Fond subtil derrière la zone haut de page */
body.single-post .site-main{
  position: relative;
}
body.single-post .site-main:before{
  content:"";
  position:absolute;
  left:-60px;
  right:-60px;
  top:-30px;
  height: 420px;
  background:
    radial-gradient(900px 420px at 10% 10%, rgba(11,107,58,.16), transparent 60%),
    radial-gradient(900px 420px at 90% 90%, rgba(255,209,0,.10), transparent 65%),
    linear-gradient(135deg, rgba(245,248,246,1), rgba(243,247,244,1));
  border-radius: 28px;
  z-index: -1;
}

/* --------- CONTENU ARTICLE --------- */
body.single-post .entry-content,
body.single-post .elementor-widget-theme-post-content{
  background: var(--lonase-card);
  border: 1px solid var(--lonase-border);
  border-radius: 20px;
  box-shadow: var(--lonase-shadow);
  padding: 26px;
  margin-top: 18px;
  color: var(--lonase-text);
  font-size: 18px;
  line-height: 1.75;
}

/* Paragraphes */
body.single-post .entry-content p{
  margin: 0 0 18px;
}

/* Titres H2/H3 premium + barre verte */
body.single-post .entry-content h2{
  margin: 26px 0 12px;
  line-height: 1.22;
  font-size: 28px;
  color: var(--lonase-green-2);
  position: relative;
  padding-left: 14px;
}
body.single-post .entry-content h2:before{
  content:"";
  position:absolute;
  left:0;
  top:.2em;
  height:.9em;
  width:4px;
  border-radius:4px;
  background: var(--lonase-green);
}
body.single-post .entry-content h3{
  margin: 22px 0 10px;
  font-size: 22px;
  color: var(--lonase-green-2);
}

/* Listes */
body.single-post .entry-content ul,
body.single-post .entry-content ol{
  padding-left: 20px;
  margin: 0 0 18px;
}
body.single-post .entry-content li{
  margin: 8px 0;
}

/* Blockquote style institutionnel */
body.single-post .entry-content blockquote{
  margin: 22px 0;
  padding: 18px 18px 18px 16px;
  border-left: 4px solid var(--lonase-green);
  background: rgba(11,107,58,.06);
  border-radius: 14px;
}

/* Images dans contenu */
body.single-post .entry-content img{
  border-radius: 14px;
  box-shadow: 0 16px 44px rgba(0,0,0,.10);
}

/* Tables (si tu as des tableaux) */
body.single-post .entry-content table{
  width: 100%;
  border-collapse: collapse;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid var(--lonase-border);
}
body.single-post .entry-content th{
  background: rgba(11,107,58,.08);
  color: var(--lonase-green-2);
  text-align: left;
  font-weight: 800;
}
body.single-post .entry-content th,
body.single-post .entry-content td{
  padding: 12px 14px;
  border-bottom: 1px solid var(--lonase-border);
}

/* --------- SIDEBAR premium --------- */
body.single-post #secondary,
body.single-post .sidebar,
body.single-post .widget-area{
  margin-top: 18px;
}

body.single-post .widget{
  background: rgba(255,255,255,.92);
  border: 1px solid var(--lonase-border);
  border-radius: 18px;
  box-shadow: 0 18px 60px rgba(0,0,0,.06);
  padding: 16px 16px;
  margin-bottom: 16px;
}

/* Titres widgets */
body.single-post .widget-title,
body.single-post .widget h2,
body.single-post .widget h3{
  margin: 0 0 10px;
  color: var(--lonase-green-2);
  font-weight: 900;
  letter-spacing: .01em;
}

/* Liste widgets (recent posts / categories) */
body.single-post .widget ul{
  list-style: none;
  padding: 0;
  margin: 0;
}
body.single-post .widget li{
  padding: 10px 0;
  border-top: 1px solid var(--lonase-border);
}
body.single-post .widget li:first-child{
  border-top: 0;
}
body.single-post .widget a{
  color: rgba(0,0,0,.78);
  text-decoration: none;
  font-weight: 700;
}
body.single-post .widget a:hover{
  color: var(--lonase-green);
}

/* Sticky sidebar (desktop only) */
@media (min-width: 1025px){
  body.single-post #secondary,
  body.single-post .sidebar,
  body.single-post .widget-area{
    position: sticky;
    top: 96px; /* ajuste si ton header sticky est plus haut */
  }
}

/* --------- Boutons partage (si plugin partage) --------- */
body.single-post .share-buttons a,
body.single-post .heateor_sss_sharing_container a{
  border-radius: 999px !important;
  overflow: hidden;
}

/* --------- Navigation article suivant/précédent --------- */
body.single-post .post-navigation,
body.single-post .nav-links{
  margin: 18px 0 30px;
}
body.single-post .post-navigation a,
body.single-post .nav-links a{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(11,107,58,.08);
  border: 1px solid rgba(11,107,58,.14);
  color: var(--lonase-green-2);
  font-weight: 800;
  text-decoration: none;
}
body.single-post .post-navigation a:hover,
body.single-post .nav-links a:hover{
  background: rgba(11,107,58,.12);
  transform: translateY(-1px);
}

/* --------- Section commentaires (si activée) --------- */
body.single-post #comments,
body.single-post .comments-area{
  background: rgba(255,255,255,.92);
  border: 1px solid var(--lonase-border);
  border-radius: 18px;
  box-shadow: 0 18px 60px rgba(0,0,0,.06);
  padding: 18px;
  margin-bottom: 30px;
}

/* --------- Responsive --------- */
@media (max-width: 1024px){
  body.single-post .entry-content,
  body.single-post .elementor-widget-theme-post-content{
    padding: 18px;
  }
  body.single-post .site-main:before{
    left:-18px;
    right:-18px;
    height: 360px;
  }
}
@media (max-width: 767px){
  body.single-post .site-main,
  body.single-post .content-area{
    padding: 0 14px;
  }
  body.single-post .entry-content{
    font-size: 17px;
    line-height: 1.72;
  }
}/* End custom CSS */