
html, body { background-color: #ffffff !important; }
.site, .site-content, .site-main, main, main#main, #main, #content, #page,
.wp-site-blocks, .is-layout-constrained, .is-layout-flow { background-color: #ffffff !important; }
.entry-content, .post-content, .wp-block-post-content, article, article.post,
article.page, article.hentry, .hentry, .page-content, .post, .page { background-color: #ffffff !important; }
.wp-block-html, .wp-block-freeform { margin: 0 !important; padding: 0 !important; background-color: #ffffff !important; }
.entry-title, .page-title, h1.entry-title, h1.page-title, .lodestar-page-title,
.site-content .entry-title, .entry-header, .page-header,
.lodestar-entry-header, .site-content .entry-header, .post-thumbnail { display: none !important; }

/* EN-TÊTE PORTAIL (hors scope) */
.fe-portal-header { background: #ffffff; padding: 1rem 0; width: 100%; }
.fe-portal-header .fe-inner { display: flex; flex-direction: column; gap: .35rem; }
.fe-portal-title-row { display: flex; align-items: center; justify-content: space-between; gap: .7rem; flex-wrap: wrap; }
.fe-portal-badge {
  font-family: sans-serif !important; font-size: .6rem !important; font-weight: 700 !important;
  letter-spacing: .12em !important; text-transform: uppercase !important;
  color: #ffffff !important; background: #2a5c3f !important;
  border-radius: 3px !important; padding: .2rem .55rem !important; flex-shrink: 0 !important; display: inline-block !important;
}
.fe-portal-title {
  font-family: 'Palatino Linotype', Palatino, Georgia, serif !important;
  font-size: clamp(1.75rem, 3vw, 2.4rem) !important; font-weight: 700 !important;
  color: #0f1f12 !important; margin: 0 !important; padding: 0 !important;
  line-height: 1.1 !important; letter-spacing: -.01em !important;
  text-transform: none !important; background: none !important; border: none !important;
}
.fe-portal-subtitle {
  font-family: sans-serif !important; font-size: .68rem !important; font-weight: 400 !important;
  color: rgba(0,0,0,.4) !important; margin: 0 !important; padding: 0 !important;
  letter-spacing: .07em !important; text-transform: uppercase !important; background: none !important;
}


/* ══════════════════════════════════════════════════════════════
   LIVRY PARTICIPATIF — PORTAIL FICHES ENVIRONNEMENT
   Ressources thématiques · Environnement · Biodiversité · Écogestes
   Palette verte — nature, biodiversité, cadre de vie
══════════════════════════════════════════════════════════════ */

#lp-fiches-env {
  --ink:       #0e1a0f;
  --paper:     #f3f6f0;
  --accent:    #2a5c3f;
  --accent2:   #3d7a57;
  --muted:     #5a6b5b;
  --rule:      rgba(14,26,15,.12);
  --card:      #ffffff;
  --header-bg: #0f2318;
  --serif:     'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;
  --sans:      -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  width: 100vw !important; max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important; margin-right: 0 !important;
  padding: 0 !important; background-color: #ffffff !important;
  color: var(--ink) !important; font-family: var(--sans) !important;
  font-size: 16px !important; line-height: 1.6 !important;
  -webkit-font-smoothing: antialiased; box-sizing: border-box !important; overflow-x: hidden !important;
}
#lp-fiches-env *, #lp-fiches-env *::before, #lp-fiches-env *::after { box-sizing: border-box !important; }
#lp-fiches-env a  { color: inherit !important; text-decoration: none !important; }
#lp-fiches-env img { display: block !important; max-width: 100% !important; }

/* ── TITRES ── */
#lp-fiches-env h2 {
  font-family: var(--serif) !important; font-size: clamp(1.25rem, 2vw, 1.7rem) !important;
  font-weight: 600 !important; line-height: 1.2 !important; color: var(--ink) !important;
  text-align: left !important; margin: 0 0 2.5rem 0 !important; padding: 0 !important;
  letter-spacing: -.01em !important; text-transform: none !important;
}
#lp-fiches-env h3 {
  font-family: var(--serif) !important; font-size: 1.1rem !important;
  font-weight: 600 !important; line-height: 1.3 !important; color: var(--ink) !important;
  text-align: left !important; margin: 0 0 .15rem 0 !important; padding: 0 !important; text-transform: none !important;
}

/* ── LAYOUT ── */
#lp-fiches-env .fe-inner {
  width: 100% !important; max-width: 1400px !important;
  margin-left: auto !important; margin-right: auto !important;
  padding-left: clamp(1.5rem, 5vw, 5rem) !important;
  padding-right: clamp(1.5rem, 5vw, 5rem) !important;
}
#lp-fiches-env .fe-section {
  padding: 4rem 0 !important; border-bottom: 1px solid var(--rule) !important;
}
#lp-fiches-env .fe-section--alt { background: var(--paper) !important; }
#lp-fiches-env .fe-section:last-of-type { border-bottom: none !important; }

/* ── EN-TÊTE PORTAIL (dans scope) — fond blanc comme les autres portails ── */
#lp-fiches-env .fe-portal-header {
  background: #ffffff !important; padding: 1rem 0 !important;
}
#lp-fiches-env .fe-portal-badge {
  background: #2a5c3f !important; color: #ffffff !important;
}
#lp-fiches-env .fe-portal-title { color: #0f1f12 !important; }
#lp-fiches-env .fe-portal-subtitle { color: rgba(0,0,0,.4) !important; }
#lp-fiches-env .fe-portal-subtitle a { color: rgba(0,0,0,.45) !important; }
#lp-fiches-env .fe-portal-subtitle a:hover { color: var(--accent) !important; }

/* ── EYEBROW ── */
#lp-fiches-env .fe-eyebrow {
  font-family: var(--sans) !important; font-size: .6rem !important; font-weight: 600 !important;
  letter-spacing: .14em !important; text-transform: uppercase !important;
  color: var(--accent) !important; margin: 0 0 .5rem !important; padding: 0 !important; background: none !important;
}

/* ── PRÉSENTATION + SIDEBAR ── */
#lp-fiches-env .fe-pres-wrap {
  display: flex !important; gap: 4rem !important; align-items: flex-start !important;
}
#lp-fiches-env .fe-pres-body { flex: 1 !important; min-width: 0 !important; }
#lp-fiches-env .fe-pres-body p {
  font-size: .9rem !important; color: var(--muted) !important; margin: 0 0 1rem !important;
  line-height: 1.75 !important;
}
#lp-fiches-env .fe-sidebar {
  width: 200px !important; flex-shrink: 0 !important;
  border-left: 1px solid var(--rule) !important; padding-left: 2rem !important;
}
#lp-fiches-env .fe-sidebar nav { display: flex !important; flex-direction: column !important; gap: .1rem !important; }
#lp-fiches-env .fe-sidebar nav a {
  font-family: var(--sans) !important; font-size: .72rem !important; font-weight: 400 !important;
  color: var(--muted) !important; padding: .35rem 0 .35rem .6rem !important;
  border-left: 2px solid transparent !important; transition: color .2s, border-color .2s !important;
  display: block !important;
}
#lp-fiches-env .fe-sidebar nav a:hover { color: var(--accent) !important; border-left-color: var(--accent) !important; }
#lp-fiches-env .fe-sidebar-title {
  font-family: var(--sans) !important; font-size: .6rem !important; font-weight: 600 !important;
  letter-spacing: .1em !important; text-transform: uppercase !important;
  color: var(--muted) !important; margin-bottom: .75rem !important;
}

/* ── THÈMES ── */
#lp-fiches-env .fe-themes {
  display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 1.5rem !important;
}
#lp-fiches-env .fe-theme-card {
  background: var(--card) !important; border: 1px solid var(--rule) !important;
  border-radius: 6px !important; padding: 1.5rem !important;
  transition: box-shadow .2s, transform .15s !important;
}
#lp-fiches-env .fe-theme-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,.08) !important; transform: translateY(-2px) !important; }
#lp-fiches-env .fe-theme-icon { font-size: 1.6rem !important; margin-bottom: .75rem !important; display: block !important; }
#lp-fiches-env .fe-theme-title {
  font-family: var(--serif) !important; font-size: .95rem !important; font-weight: 600 !important;
  color: var(--ink) !important; margin-bottom: .4rem !important;
}
#lp-fiches-env .fe-theme-desc {
  font-size: .78rem !important; color: var(--muted) !important; line-height: 1.6 !important; margin: 0 !important;
}

/* ── GRILLE ARTICLES ── */
#lp-fiches-env .fe-articles-header {
  display: flex !important; align-items: flex-end !important;
  justify-content: space-between !important; gap: 1rem !important; margin-bottom: 2rem !important;
}
#lp-fiches-env .fe-grid {
  display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 1.5rem !important;
}
#lp-fiches-env .fe-tile {
  background: var(--card) !important; border: 1px solid var(--rule) !important;
  border-radius: 6px !important; overflow: hidden !important;
  display: flex !important; flex-direction: column !important;
  transition: box-shadow .2s, transform .15s !important;
}
#lp-fiches-env .fe-tile:hover { box-shadow: 0 6px 24px rgba(0,0,0,.1) !important; transform: translateY(-2px) !important; }
#lp-fiches-env .fe-tile-img { width: 100% !important; height: 160px !important; object-fit: cover !important; display: block !important; }
#lp-fiches-env .fe-tile-placeholder {
  height: 160px !important; background: rgba(42,92,63,.08) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 2rem !important;
}
#lp-fiches-env .fe-tile-body { padding: 1.1rem !important; flex: 1 !important; display: flex !important; flex-direction: column !important; gap: .4rem !important; }
#lp-fiches-env .fe-tile-meta { display: flex !important; align-items: center !important; gap: .5rem !important; flex-wrap: wrap !important; }
#lp-fiches-env .fe-tile-tag {
  font-family: var(--sans) !important; font-size: .55rem !important; font-weight: 600 !important;
  letter-spacing: .1em !important; text-transform: uppercase !important;
  color: var(--accent) !important; background: rgba(42,92,63,.08) !important;
  padding: .15rem .4rem !important; border-radius: 2px !important;
}
#lp-fiches-env .fe-tile-date { display: none !important; }
#lp-fiches-env .fe-tile-title {
  font-family: var(--serif) !important; font-size: .9rem !important; font-weight: 600 !important;
  color: var(--ink) !important; line-height: 1.35 !important;
}
#lp-fiches-env .fe-tile-excerpt {
  font-size: .75rem !important; color: var(--muted) !important;
  line-height: 1.55 !important; flex: 1 !important;
  display: -webkit-box !important; -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important; overflow: hidden !important;
}
#lp-fiches-env .fe-tile-lire {
  font-family: var(--sans) !important; font-size: .68rem !important; font-weight: 500 !important;
  color: var(--accent) !important; margin-top: .3rem !important;
  display: inline-block !important;
}

/* ── LOADING / ERREUR ── */
#lp-fiches-env .fe-loading {
  display: none !important; align-items: center !important; gap: .75rem !important;
  padding: 3rem 0 !important; justify-content: center !important;
  font-size: .82rem !important; color: var(--muted) !important;
}
#lp-fiches-env .fe-visible-flex { display: flex !important; }
#lp-fiches-env .fe-hidden { display: none !important; }
#lp-fiches-env .fe-visible-grid { display: grid !important; }
#lp-fiches-env .fe-spinner {
  width: 18px !important; height: 18px !important; border-radius: 50% !important;
  border: 2px solid var(--rule) !important; border-top-color: var(--accent) !important;
  animation: fe-spin .7s linear infinite !important;
}
@keyframes fe-spin { to { transform: rotate(360deg); } }
#lp-fiches-env .fe-articles-error {
  display: none !important; padding: 2rem !important; text-align: center !important;
  font-size: .8rem !important; color: var(--muted) !important;
  border: 1px dashed var(--rule) !important; border-radius: 6px !important;
}
#lp-fiches-env .fe-articles-error.fe-visible { display: block !important; }

/* ── BANDEAU INTRO ── */
#lp-fiches-env .fe-intro-band {
  background: var(--accent) !important; color: #ffffff !important;
  border-radius: 8px !important; padding: 1.5rem 2rem !important;
  margin-bottom: 2.5rem !important;
  display: flex !important; align-items: flex-start !important; gap: 1rem !important;
}
#lp-fiches-env .fe-intro-band,
#lp-fiches-env .fe-intro-band *,
#lp-fiches-env .fe-intro-band p,
#lp-fiches-env .fe-intro-band strong { color: #ffffff !important; }
#lp-fiches-env .fe-intro-band-icon { font-size: 1.6rem !important; flex-shrink: 0 !important; }
#lp-fiches-env .fe-intro-band-text { font-size: .82rem !important; line-height: 1.65 !important; }
#lp-fiches-env .fe-intro-band-text strong { font-weight: 600 !important; }

/* ── CTA ── */
#lp-fiches-env .fe-cta-band {
  background: var(--header-bg) !important; color: #ffffff !important;
  padding: 3.5rem 0 !important;
}
#lp-fiches-env .fe-cta-band h2 { color: #ffffff !important; margin-bottom: .8rem !important; }
#lp-fiches-env .fe-cta {
  display: grid !important; grid-template-columns: 1fr auto !important;
  align-items: center !important; gap: 2rem !important;
}
#lp-fiches-env .fe-cta-desc { font-size: .85rem !important; color: rgba(255,255,255,.65) !important; margin: 0 !important; }
#lp-fiches-env .fe-cta-btn {
  display: inline-flex !important; align-items: center !important; gap: .4rem !important;
  background: var(--accent2) !important; color: #ffffff !important;
  font-family: var(--sans) !important; font-size: .78rem !important; font-weight: 600 !important;
  padding: .75rem 1.5rem !important; border-radius: 4px !important; white-space: nowrap !important;
  transition: background .2s !important;
}
#lp-fiches-env .fe-cta-btn:hover { background: #2a5c3f !important; }

/* ── QUIZ CARD ── */
#lp-fiches-env .fe-obs-card {
  display: flex !important; gap: 1.5rem !important; align-items: flex-start !important;
  background: var(--card) !important; border: 1px solid var(--rule) !important;
  border-radius: 8px !important; padding: 2rem !important;
  transition: box-shadow .2s !important;
}
#lp-fiches-env .fe-obs-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,.08) !important; }
#lp-fiches-env .fe-obs-card-icon { font-size: 2rem !important; flex-shrink: 0 !important; }
#lp-fiches-env .fe-obs-card-body { flex: 1 !important; }
#lp-fiches-env .fe-obs-card-title {
  font-family: var(--serif) !important; font-size: 1.1rem !important;
  font-weight: 600 !important; margin-bottom: .5rem !important; color: var(--ink) !important;
}
#lp-fiches-env .fe-obs-card-desc { font-size: .82rem !important; color: var(--muted) !important; line-height: 1.65 !important; margin: 0 0 .75rem !important; }
#lp-fiches-env .fe-obs-card-link { font-size: .75rem !important; font-weight: 500 !important; color: var(--accent) !important; }

/* ── RESPONSIVE ── */
@media (max-width: 1100px) { #lp-fiches-env .fe-sidebar { display: none !important; } }
@media (max-width: 900px) {
  #lp-fiches-env .fe-themes { grid-template-columns: repeat(2, 1fr) !important; }
  #lp-fiches-env .fe-grid    { grid-template-columns: repeat(2, 1fr) !important; }
  #lp-fiches-env .fe-cta     { grid-template-columns: 1fr !important; }
}
@media (max-width: 600px) {
  #lp-fiches-env .fe-themes { grid-template-columns: 1fr !important; }
  #lp-fiches-env .fe-grid    { grid-template-columns: 1fr !important; }
}

#lp-fiches-env .fe-hidden        { display: none !important; }
#lp-fiches-env .fe-visible-flex  { display: flex !important; }
#lp-fiches-env .fe-visible-grid  { display: grid !important; }
#lp-fiches-env .fe-articles-error {
  background: rgba(42,92,63,.05) !important;
  border: 1px solid rgba(42,92,63,.12) !important;
  border-radius: 6px !important;
  padding: 1.2rem 1.5rem !important;
  font-size: .78rem !important;
  color: #6b6b6b !important;
}

