/*
 * Maison Plus Libre — palette éditoriale consolidée
 *
 * Répartition visuelle :
 * - ~70 % neutres chauds : papier, ivoire, sable
 * - ~20 % vert de marque : identité et grands moments
 * - ~10 % accents : cuivre, ocre, bleu, végétal
 *
 * Hiérarchie d'action :
 * - cuivre profond = CTA de décision / diagnostic
 * - ivoire = CTA posé sur un fond vert
 * - outline neutre = action secondaire
 * - vert = identité de marque, pas bouton automatique
 */

:root {
  --mpl-palette-brand: #17483c;
  --mpl-palette-brand-deep: #0d342c;
  --mpl-palette-brand-soft: #dfe9e3;

  --mpl-palette-paper: #fbf8f1;
  --mpl-palette-white: #fffdf9;
  --mpl-palette-ivory: #f3ede2;
  --mpl-palette-sand: #e8ddcc;

  --mpl-palette-ink: #24322e;
  --mpl-palette-muted: #586761;
  --mpl-palette-line: rgba(36,50,46,.14);

  --mpl-palette-copper: #a95e49;
  --mpl-palette-ochre: #92701f;
  --mpl-palette-water: #4f7882;
  --mpl-palette-living: #627557;

  --mpl-action: #8a4636;
  --mpl-action-hover: #6f372b;
  --mpl-action-soft: #f0ddd6;

  --mpl-palette-shadow: 0 26px 72px rgba(37,48,43,.12);
}

body.mpl-design-v4,
body.mpl-is-static-page {
  background: var(--mpl-palette-paper);
  color: var(--mpl-palette-ink);
}

/* HEADER ----------------------------------------------------------- */
body.mpl-design-v4 .mpl-site-header,
body.mpl-is-static-page .mpl-site-header {
  background: rgba(251,248,241,.95);
  border-bottom-color: rgba(36,50,46,.1);
}

body.mpl-design-v4 .mpl-brand__mark,
body.mpl-is-static-page .mpl-brand__mark {
  color: var(--mpl-palette-brand);
}

body.mpl-design-v4 .mpl-brand__copy strong,
body.mpl-is-static-page .mpl-brand__copy strong,
body.mpl-design-v4 .mpl-primary-nav a,
body.mpl-is-static-page .mpl-primary-nav a {
  color: var(--mpl-palette-ink);
}

body.mpl-design-v4 .mpl-primary-nav a:hover,
body.mpl-is-static-page .mpl-primary-nav a:hover {
  background: var(--mpl-palette-ivory);
  color: var(--mpl-palette-brand-deep);
}

/* Le diagnostic est l'action prioritaire, il ne se confond plus avec la marque. */
body.mpl-design-v4 .mpl-header-cta,
body.mpl-is-static-page .mpl-header-cta,
body.mpl-design-v4 .mpl-mobile-nav__cta,
body.mpl-is-static-page .mpl-mobile-nav__cta {
  background: var(--mpl-action);
  color: #fff;
  border-color: var(--mpl-action);
  box-shadow: 0 9px 24px rgba(138,70,54,.18);
}

body.mpl-design-v4 .mpl-header-cta:hover,
body.mpl-is-static-page .mpl-header-cta:hover,
body.mpl-design-v4 .mpl-mobile-nav__cta:hover,
body.mpl-is-static-page .mpl-mobile-nav__cta:hover {
  background: var(--mpl-action-hover);
  border-color: var(--mpl-action-hover);
}

/* HOME ------------------------------------------------------------- */
body.mpl-is-front-page .mpl4-hero {
  background:
    radial-gradient(circle at 84% 17%, rgba(23,72,60,.07), transparent 26%),
    radial-gradient(circle at 8% 86%, rgba(169,94,73,.045), transparent 24%),
    var(--mpl-palette-paper);
}

body.mpl-is-front-page .mpl4-hero::before {
  border-color: rgba(23,72,60,.07);
  box-shadow: 0 0 0 78px rgba(23,72,60,.018), 0 0 0 156px rgba(23,72,60,.01);
}

body.mpl-is-front-page .mpl4-hero h1,
body.mpl-is-front-page .mpl4-heading h2,
body.mpl-is-front-page .mpl4-lever__name strong,
body.mpl-is-front-page .mpl4-featured__copy h3 {
  color: var(--mpl-palette-ink);
}

body.mpl-is-front-page .mpl4-hero h1 em {
  color: #50655e;
}

body.mpl-is-front-page .mpl4-hero__lead,
body.mpl-is-front-page .mpl4-heading--split > p,
body.mpl-is-front-page .mpl4-lever > p,
body.mpl-is-front-page .mpl4-featured__copy p {
  color: var(--mpl-palette-muted);
}

body.mpl-is-front-page .mpl4-kicker {
  color: var(--mpl-palette-brand);
}

body.mpl-is-front-page .mpl4-kicker > span {
  background: var(--mpl-palette-brand);
}

/* CTA hero : cuivre = décision immédiate. */
body.mpl-is-front-page .mpl4-btn--primary {
  background: var(--mpl-action);
  color: #fff;
  border-color: var(--mpl-action);
  box-shadow: 0 12px 30px rgba(138,70,54,.18);
}

body.mpl-is-front-page .mpl4-btn--primary:hover {
  background: var(--mpl-action-hover);
  border-color: var(--mpl-action-hover);
}

/* Action secondaire : visuellement présente mais pas concurrente. */
body.mpl-is-front-page .mpl4-btn--quiet {
  color: var(--mpl-palette-ink);
  background: rgba(255,253,249,.72);
  border-color: rgba(36,50,46,.2);
  box-shadow: none;
}

body.mpl-is-front-page .mpl4-btn--quiet:hover {
  background: var(--mpl-palette-ivory);
  border-color: rgba(36,50,46,.32);
}

/* Le grand visuel est le principal moment de marque. */
body.mpl-is-front-page .mpl4-system {
  background:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    radial-gradient(circle at 50% 48%, rgba(255,255,255,.055), transparent 38%),
    var(--mpl-palette-brand-deep);
  box-shadow: 0 28px 76px rgba(13,52,44,.18);
}

/* Rail : fond commun, accents seulement en signal. */
body.mpl-is-front-page .mpl4-flow-rail {
  background: var(--mpl-palette-white);
  border-color: var(--mpl-palette-line);
}

body.mpl-is-front-page .mpl4-flow-tab {
  background: transparent;
  border-color: var(--mpl-palette-line);
}

body.mpl-is-front-page .mpl4-flow-tab--sun::before { background: var(--mpl-palette-copper); }
body.mpl-is-front-page .mpl4-flow-tab--energy::before { background: var(--mpl-palette-ochre); }
body.mpl-is-front-page .mpl4-flow-tab--water::before { background: var(--mpl-palette-water); }
body.mpl-is-front-page .mpl4-flow-tab--living::before { background: var(--mpl-palette-living); }
body.mpl-is-front-page .mpl4-flow-tab strong { color: var(--mpl-palette-ink); }
body.mpl-is-front-page .mpl4-flow-tab small { color: var(--mpl-palette-muted); }

body.mpl-is-front-page .mpl4-manifesto {
  background: var(--mpl-palette-ivory);
}

body.mpl-is-front-page .mpl4-manifesto__statement {
  color: var(--mpl-palette-ink);
}

body.mpl-is-front-page .mpl4-manifesto__rule {
  border-left-color: var(--mpl-palette-brand);
}

body.mpl-is-front-page .mpl4-manifesto__rule strong {
  color: var(--mpl-palette-brand-deep);
}

/* Les 4 sujets restent neutres. */
body.mpl-is-front-page .mpl4-levers {
  background: var(--mpl-palette-paper);
}

body.mpl-is-front-page .mpl4-lever {
  margin: 7px 0;
  padding-left: 18px;
  padding-right: 18px;
  border: 1px solid rgba(36,50,46,.08);
  border-radius: 18px;
  background: rgba(255,253,249,.58);
}

body.mpl-is-front-page .mpl4-lever:hover {
  background: var(--mpl-palette-white);
  border-color: rgba(23,72,60,.18);
  box-shadow: 0 12px 30px rgba(37,48,43,.055);
}

body.mpl-is-front-page .mpl4-lever--sun { --signal: var(--mpl-palette-copper); }
body.mpl-is-front-page .mpl4-lever--energy { --signal: var(--mpl-palette-ochre); }
body.mpl-is-front-page .mpl4-lever--water { --signal: var(--mpl-palette-water); }
body.mpl-is-front-page .mpl4-lever--living { --signal: var(--mpl-palette-living); }
body.mpl-is-front-page .mpl4-lever__signal i { background: var(--mpl-palette-white); }

/* Diagnostic : grand moment vert. Le bouton devient ivoire. */
body.mpl-is-front-page .mpl4-compass {
  background:
    radial-gradient(circle at 15% 52%, rgba(255,255,255,.045), transparent 27%),
    radial-gradient(circle at 80% 30%, rgba(169,94,73,.055), transparent 28%),
    var(--mpl-palette-brand-deep);
}

body.mpl-is-front-page .mpl4-compass__center {
  background: var(--mpl-palette-paper);
  color: var(--mpl-palette-brand-deep);
}

body.mpl-is-front-page .mpl4-compass__copy .mpl4-kicker > span {
  background: #d9c89f;
}

body.mpl-is-front-page .mpl4-compass .mpl4-btn--cream {
  background: var(--mpl-palette-ivory);
  color: var(--mpl-palette-brand-deep);
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
}

body.mpl-is-front-page .mpl4-compass .mpl4-btn--cream:hover {
  background: #fff;
  color: var(--mpl-palette-brand-deep);
}

body.mpl-is-front-page .mpl4-budget {
  background: var(--mpl-palette-ivory);
}

body.mpl-is-front-page .mpl4-budget-line article {
  background: transparent;
}

body.mpl-is-front-page .mpl4-guides {
  background: var(--mpl-palette-white);
}

body.mpl-is-front-page .mpl4-featured__media,
body.mpl-is-front-page .mpl4-featured__cover {
  background-color: var(--mpl-palette-brand-deep);
}

body.mpl-is-front-page .mpl4-featured__cover {
  background:
    radial-gradient(circle at 74% 22%, rgba(255,255,255,.055), transparent 24%),
    radial-gradient(circle at 35% 74%, rgba(169,94,73,.09), transparent 28%),
    var(--mpl-palette-brand-deep);
}

/* Les liens éditoriaux restent des liens, pas de faux boutons supplémentaires. */
body.mpl-is-front-page .mpl4-featured__copy > a,
body.mpl-is-front-page .mpl4-guide-list article > a {
  color: var(--mpl-palette-brand-deep);
}

/* Un seul accent fort hors vert sur la home. */
body.mpl-is-front-page .mpl4-score {
  background: #a85f4c;
}

/* STATIC PAGES ----------------------------------------------------- */
body.mpl-is-static-page .mpl-static-page {
  background: var(--mpl-palette-paper);
}

body.mpl-is-static-page .mpl-static-page--brand {
  --page-signal: var(--mpl-palette-brand);
  --page-signal-soft: rgba(23,72,60,.08);
}
body.mpl-is-static-page .mpl-static-page--heat {
  --page-signal: var(--mpl-palette-copper);
  --page-signal-soft: rgba(169,94,73,.07);
}
body.mpl-is-static-page .mpl-static-page--energy {
  --page-signal: var(--mpl-palette-ochre);
  --page-signal-soft: rgba(146,112,31,.07);
}
body.mpl-is-static-page .mpl-static-page--water {
  --page-signal: var(--mpl-palette-water);
  --page-signal-soft: rgba(79,120,130,.07);
}
body.mpl-is-static-page .mpl-static-page--living {
  --page-signal: var(--mpl-palette-living);
  --page-signal-soft: rgba(98,117,87,.07);
}

body.mpl-is-static-page .mpl-static-hero {
  background:
    radial-gradient(circle at 78% 18%, var(--page-signal-soft), transparent 25%),
    var(--mpl-palette-ivory);
  border-bottom-color: var(--mpl-palette-line);
}

body.mpl-is-static-page .mpl-static-hero h1,
body.mpl-is-static-page .mpl-static-content h2,
body.mpl-is-static-page .mpl-static-content h3,
body.mpl-is-static-page .mpl-static-aside strong {
  color: var(--mpl-palette-ink);
}

body.mpl-is-static-page .mpl-static-hero__lead,
body.mpl-is-static-page .mpl-static-content,
body.mpl-is-static-page .mpl-static-aside p {
  color: var(--mpl-palette-muted);
}

body.mpl-is-static-page .mpl-static-system {
  background:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    var(--mpl-palette-brand-deep);
  box-shadow: var(--mpl-palette-shadow);
}

body.mpl-is-static-page .mpl-pillar-map {
  background: var(--mpl-palette-white);
  border-color: var(--mpl-palette-line);
}

body.mpl-is-static-page .mpl-pillar-map__nav a {
  position: relative;
  padding-left: 28px;
  color: var(--mpl-palette-ink);
  background: var(--mpl-palette-paper);
  border-color: rgba(36,50,46,.13);
}

body.mpl-is-static-page .mpl-pillar-map__nav a::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  transform: translateY(-50%);
  background: var(--mpl-palette-brand);
}

body.mpl-is-static-page .mpl-pillar-map__nav a.heat::before { background: var(--mpl-palette-copper); }
body.mpl-is-static-page .mpl-pillar-map__nav a.energy::before { background: var(--mpl-palette-ochre); }
body.mpl-is-static-page .mpl-pillar-map__nav a.water::before { background: var(--mpl-palette-water); }
body.mpl-is-static-page .mpl-pillar-map__nav a.living::before { background: var(--mpl-palette-living); }

body.mpl-is-static-page .mpl-pillar-map__nav a.is-active {
  color: var(--mpl-palette-brand-deep);
  background: var(--mpl-palette-brand-soft);
  border-color: rgba(23,72,60,.28);
  box-shadow: inset 0 0 0 1px rgba(23,72,60,.05);
}

body.mpl-is-static-page .mpl-static-aside {
  border-left-color: var(--page-signal);
}

body.mpl-is-static-page .mpl-static-content blockquote {
  border-left-color: var(--page-signal);
  background: rgba(255,253,249,.58);
}

body.mpl-is-static-page .mpl-static-content table {
  background: var(--mpl-palette-white);
}

body.mpl-is-static-page .mpl-static-content th {
  color: var(--mpl-palette-brand-deep);
  background: var(--mpl-palette-ivory);
}

body.mpl-is-static-page .mpl-static-next {
  background: var(--mpl-palette-brand-deep);
}

/* Sur fond vert, l'action devient ivoire au lieu d'un bouton vert de plus. */
body.mpl-is-static-page .mpl-static-next a {
  color: var(--mpl-palette-brand-deep);
  background: var(--mpl-palette-ivory);
  border-color: rgba(255,255,255,.34);
  box-shadow: 0 10px 26px rgba(0,0,0,.12);
}

body.mpl-is-static-page .mpl-static-next a:hover {
  color: var(--mpl-palette-brand-deep);
  background: #fff;
  border-color: #fff;
}

/* FOOTER ----------------------------------------------------------- */
body.mpl-design-v4 .mpl-site-footer,
body.mpl-is-static-page .mpl-site-footer {
  background: var(--mpl-palette-brand-deep);
}

body.mpl-design-v4 .mpl-footer-note,
body.mpl-is-static-page .mpl-footer-note {
  background: rgba(255,255,255,.035);
}

/* MOBILE ----------------------------------------------------------- */
@media (max-width: 720px) {
  body.mpl-is-front-page .mpl4-lever {
    padding-left: 14px;
    padding-right: 14px;
  }

  body.mpl-is-static-page .mpl-static-hero {
    background: var(--mpl-palette-ivory);
  }

  body.mpl-design-v4 .mpl-mobile-nav__cta,
  body.mpl-is-static-page .mpl-mobile-nav__cta {
    box-shadow: none;
  }
}
