.elementor-436 .elementor-element.elementor-element-d804fdc{--display:flex;--margin-top:120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.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-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-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-436 .elementor-element.elementor-element-df9b926 .elementor-icon-list-icon{width:14px;}.elementor-436 .elementor-element.elementor-element-df9b926 .elementor-icon-list-icon i{font-size:14px;}.elementor-436 .elementor-element.elementor-element-df9b926 .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-436 .elementor-element.elementor-element-aa5d447{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-widget-table-of-contents .elementor-toc__header, .elementor-widget-table-of-contents .elementor-toc__header-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-table-of-contents .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-436 .elementor-element.elementor-element-f0183e9{width:var( --container-widget-width, 40% );max-width:40%;--container-widget-width:40%;--container-widget-flex-grow:0;--item-text-hover-decoration:underline;}.elementor-436 .elementor-element.elementor-element-f0183e9.elementor-element{--align-self:flex-start;}.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__header-title{text-align:start;}.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-436 .elementor-element.elementor-element-d7d7b71{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}/* Start custom CSS for table-of-contents, class: .elementor-element-f0183e9 *//* Header */
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__header {
  background: var(--e-global-color-primary) !important;
  border: none !important;
  padding: .7rem 1.1rem !important;
}
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__header-title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: .62rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  color: var(--e-global-color-secondary) !important;
}

/* Body */
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__body {
  background: #fff !important;
  border: 1px solid rgba(47,61,77,.08) !important;
  border-top: none !important;
  padding: .4rem 0 .6rem !important;
}

/* Garder la hiérarchie — indentation naturelle */
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__list-wrapper ul {
  padding-left: .8rem !important;
}

/* Fix troncature */
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__list-item a {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  max-width: 100% !important;
  display: block !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: .74rem !important;
  font-weight: 500 !important;
  color: var(--e-global-color-primary) !important;
  text-decoration: none !important;
  padding: .4rem 1rem !important;
  border-left: 2px solid transparent !important;
  transition: all .25s ease !important;
}
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__list-item a:hover {
  color: var(--e-global-color-accent) !important;
  border-left-color: var(--e-global-color-secondary) !important;
  background: rgba(219,200,135,.05) !important;
}

/* Sous-niveaux plus légers */
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__list-wrapper ul a {
  font-size: .7rem !important;
  font-weight: 400 !important;
  color: rgba(42,42,42,.55) !important;
  padding: .3rem 1rem !important;
}
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__list-wrapper ul ul a {
  font-size: .65rem !important;
  font-weight: 300 !important;
  color: rgba(42,42,42,.4) !important;
  padding: .25rem 1rem !important;
}

/* Actif */
.elementor-436 .elementor-element.elementor-element-f0183e9 .elementor-toc__list-item--active > a {
  color: var(--e-global-color-accent) !important;
  border-left-color: var(--e-global-color-secondary) !important;
  font-weight: 600 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d804fdc *//* ===================== SINGLE POST TEMPLATE ===================== */

/* Container principal */
.elementor-location-single .elementor-section-wrap > .elementor-section,
.elementor-location-single > .elementor-section {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: clamp(2rem, 4vw, 3rem) 2rem clamp(2rem, 4vw, 3rem) !important;
}

/* Titre de la publication */
.elementor-widget-theme-post-title h1,
.elementor-widget-theme-post-title .elementor-heading-title {
  font-family: var(--e-global-typography-primary-font-family, 'Playfair Display', serif) !important;
  font-size: clamp(1.4rem, 2.8vw, 2rem) !important;
  font-weight: 700 !important;
  color: var(--e-global-color-primary) !important;
  line-height: 1.3 !important;
  margin: 0 0 1rem !important;
}

/* Image mise en avant — compacte */
.elementor-widget-theme-post-featured-image img {
  width: 100% !important;
  max-height: 280px !important;
  object-fit: cover !important;
  display: block !important;
  margin-bottom: 1.2rem !important;
}

/* Informations de la publication */
.elementor-widget-theme-post-info {
  margin-bottom: 1.5rem !important;
  padding-bottom: 1rem !important;
  border-bottom: 1px solid rgba(47,61,77,.08) !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-items {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .4rem 1rem !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-text,
.elementor-widget-theme-post-info .elementor-icon-list-text a {
  font-family: var(--e-global-typography-secondary-font-family, 'Montserrat', sans-serif) !important;
  font-size: .7rem !important;
  font-weight: 400 !important;
  color: rgba(42,42,42,.45) !important;
  text-decoration: none !important;
  transition: color .25s ease !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-text a:hover {
  color: var(--e-global-color-accent) !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-icon svg {
  fill: var(--e-global-color-accent) !important;
  width: 13px !important;
  height: 13px !important;
}


/* ===================== INFOS POST (date, auteur) ===================== */
.elementor-widget-theme-post-info {
  margin-bottom: 1.5rem !important;
  padding-bottom: 1rem !important;
  border-bottom: 1px solid rgba(47,61,77,.08) !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-items {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .4rem 1rem !important;
  list-style: none !important;
  padding: 0 !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-item {
  list-style: none !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-text,
.elementor-widget-theme-post-info .elementor-icon-list-text a,
.elementor-widget-theme-post-info .elementor-post-info__item,
.elementor-widget-theme-post-info .elementor-post-info__item a {
  font-family: var(--e-global-typography-secondary-font-family, 'Montserrat', sans-serif) !important;
  font-size: .7rem !important;
  font-weight: 400 !important;
  color: rgba(42,42,42,.4) !important;
  text-decoration: none !important;
  letter-spacing: .03em !important;
  transition: color .25s ease !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-text a:hover,
.elementor-widget-theme-post-info .elementor-post-info__item a:hover {
  color: var(--e-global-color-accent) !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-icon {
  color: var(--e-global-color-accent) !important;
}
.elementor-widget-theme-post-info .elementor-icon-list-icon svg {
  fill: var(--e-global-color-accent) !important;
  width: 12px !important;
  height: 12px !important;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width: 960px) {
  .elementor-widget-table-of-contents {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
    margin-bottom: 1.5rem !important;
  }
}
/* ===================== CONTENU ===================== */
.elementor-widget-theme-post-content .elementor-widget-container {
  font-family: var(--e-global-typography-secondary-font-family, 'Montserrat', sans-serif) !important;
  font-size: .92rem !important;
  font-weight: 300 !important;
  color: var(--e-global-color-text) !important;
  line-height: 1.8 !important;
}
.elementor-widget-theme-post-content h2 {
  font-family: var(--e-global-typography-primary-font-family, 'Playfair Display', serif) !important;
  font-size: clamp(1.2rem, 2.2vw, 1.55rem) !important;
  font-weight: 700 !important;
  color: var(--e-global-color-primary) !important;
  margin: 2rem 0 .8rem !important;
  line-height: 1.3 !important;
}
.elementor-widget-theme-post-content h3 {
  font-family: var(--e-global-typography-primary-font-family, 'Playfair Display', serif) !important;
  font-size: clamp(1rem, 1.8vw, 1.25rem) !important;
  font-weight: 700 !important;
  color: var(--e-global-color-primary) !important;
  margin: 1.5rem 0 .6rem !important;
  line-height: 1.35 !important;
}
.elementor-widget-theme-post-content h4 {
  font-family: var(--e-global-typography-secondary-font-family, 'Montserrat', sans-serif) !important;
  font-size: .95rem !important;
  font-weight: 600 !important;
  color: var(--e-global-color-primary) !important;
  margin: 1.2rem 0 .5rem !important;
}
.elementor-widget-theme-post-content p {
  margin: 0 0 1rem !important;
}
.elementor-widget-theme-post-content a {
  color: var(--e-global-color-accent) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color .25s ease !important;
}
.elementor-widget-theme-post-content a:hover {
  color: var(--e-global-color-secondary) !important;
}
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol {
  padding-left: 1.3rem !important;
  margin: 0 0 1rem !important;
}
.elementor-widget-theme-post-content li {
  margin-bottom: .4rem !important;
  line-height: 1.7 !important;
}
.elementor-widget-theme-post-content blockquote {
  border-left: 3px solid var(--e-global-color-secondary) !important;
  margin: 1.2rem 0 !important;
  padding: .8rem 1.2rem !important;
  background: #FAFAF7 !important;
  font-style: italic !important;
  color: var(--e-global-color-primary) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
}
.elementor-widget-theme-post-content img {
  max-width: 100% !important;
  height: auto !important;
  margin: 1.2rem 0 !important;
  display: block !important;
}
.elementor-widget-theme-post-content strong {
  font-weight: 600 !important;
  color: var(--e-global-color-primary) !important;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width: 960px) {
  .elementor-widget-table-of-contents {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
    margin-bottom: 1.5rem !important;
  }
}
@media (max-width: 580px) {
  .elementor-widget-theme-post-featured-image img {
    max-height: 200px !important;
  }
}/* End custom CSS */