/* Start custom CSS *//* Pages légales (Politique 161, Mentions 69, Barème 68) — même CSS dans le custom_css de chaque page.
   Colonne principale = #mh-legal, colonne latérale = #mh-legal-side (Advanced > ID). */

/* Mise en page : 80 px sous la bannière, 44 px entre sections */
body .elementor .e-con:has(> .e-con > #mh-legal) { padding-block-start: 80px; padding-block-end: 96px; }
body .elementor #mh-legal { gap: 44px; }
body .elementor #mh-legal > section { gap: 11px; }

/* Titres de section : Jost 32 px, filet en dessous */
body .elementor #mh-legal h2 { font-family: var(--mh-font-body); font-style: normal; font-weight: 400; font-size: 32px; letter-spacing: 1px; line-height: 40px; color: #080808; padding-block-end: 18px; margin-block-end: 8px; border-bottom: 1px solid #E5DED3; }
body .elementor #mh-legal h3 { font-family: var(--mh-font-body); font-style: normal; font-weight: 500; font-size: 18px; letter-spacing: 0; line-height: 26px; color: #1B1B1B; margin-block-start: 14px; margin-block-end: 0; }
body .elementor #mh-legal h2 + h3 { margin-block-start: 0; }
body .elementor #mh-legal p { font-family: var(--mh-font-body); font-size: 16px; line-height: 24px; color: #606060; }
body .elementor #mh-legal p strong { font-weight: 500; color: #3E3E3E; }
body .elementor #mh-legal p a { font-weight: 500; color: #3E3E3E; text-decoration: underline; text-underline-offset: 3px; transition: color 0.2s; }
body .elementor #mh-legal p a:hover { color: var(--mh-accent-deep); }
@media (max-width: 767px) { body .elementor #mh-legal h2 { font-size: 26px; line-height: 32px; } body .elementor #mh-legal { gap: 48px; } }

/* Encadrés (intro / note) : texte justifié */
body .elementor #mh-legal-intro p, body .elementor #mh-legal-note p { text-align: justify; }
body .elementor #mh-legal-intro svg, body .elementor #mh-legal-note svg { fill: none; }

/* Sommaire : fond crème ; entrée courante = trait marine + texte marine (classe is-active posée par mh-8-sommaire.js) */
body .elementor #mh-legal-side > nav { background-color: #FAF7F2; border-color: #EADBC5; padding: 24px; gap: 14px; }
body .elementor #mh-legal-side > div { background-color: var(--mh-bg-ivory); border-color: var(--mh-accent); padding: 24px; gap: 12px; }
body .elementor #mh-legal-side > nav > p:first-child, body .elementor #mh-legal-side > div > p:first-child { font-size: 11px; font-weight: 500; letter-spacing: 3px; line-height: 16px; color: #86663A; text-transform: uppercase; }
body .elementor #mh-legal-side > nav > div { gap: 10px; }
body .elementor #mh-legal-side > nav > div > * { font-size: 12px; line-height: 18px; color: #6F6F6F; padding: 8px 12px; border: 0; border-inline-start: 2px solid #E5DED3; transition: color 0.2s, border-color 0.2s; }
body .elementor #mh-legal-side > nav > div > *:hover { color: var(--mh-primary); }
body .elementor #mh-legal-side > nav > div > .is-active { color: var(--mh-primary); font-weight: 500; border-inline-start-color: var(--mh-primary); }
body .elementor #mh-legal-side > div > p:nth-child(2) { font-size: 14px; line-height: 20px; color: #4A4A4A; }
/* Lien « contact@… → » : capitales, souligné marine, flèche */
body .elementor #mh-legal-side .mh-side-lien, body .elementor #mh-legal-side > div > a:last-child, body .elementor #mh-legal-side > div > p:last-child a { display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding-block-end: 8px; border-bottom: 1px solid var(--mh-primary); font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase; text-decoration: none; color: var(--mh-primary); }
body .elementor #mh-legal-side > div > a:last-child::after, body .elementor #mh-legal-side > div > p:last-child a::after { content: ""; width: 16px; height: 16px; flex: 0 0 16px; background-color: currentColor; -webkit-mask: url("/wp-content/uploads/2026/10/icon-arrow-right-navy.svg") center / contain no-repeat; mask: url("/wp-content/uploads/2026/10/icon-arrow-right-navy.svg") center / contain no-repeat; }
body .elementor #mh-legal-intro, body .elementor #mh-legal-note { padding-block: 16px; }

/* Tableaux (Mentions légales) : libellé à gauche sur fond clair, valeur grise, filets beige */
body .elementor [id^="mh-legal-tab"] { border: 1px solid #EADBC5; background-color: var(--mh-surface); }
body .elementor #mh-legal-tab-sec4-0 { max-width: 788px; }
body .elementor [id^="mh-legal-tab"] > div + div { border-top: 1px solid #EADBC5; }
body .elementor #mh-legal [id^="mh-legal-tab"] p { font-size: 14px; line-height: 20px; padding: 11px 12px; }
body .elementor #mh-legal [id^="mh-legal-tab"] > div > p:first-child { flex: 0 0 229px; font-weight: 500; color: #1B1B1B; background-color: #FDFBF8; border-inline-end: 1px solid #EADBC5; }
body .elementor #mh-legal [id^="mh-legal-tab"] > div > p:last-child { flex: 1 1 auto; color: #6F6F6F; }
body .elementor #mh-legal [id^="mh-legal-tab"] p a { font-weight: 400; color: #6F6F6F; text-decoration: none; }
body .elementor #mh-legal #mh-legal-tab-sec4-0 p a { text-decoration: underline; }
@media (max-width: 767px) { body .elementor #mh-legal [id^="mh-legal-tab"] > div > p:first-child { flex-basis: 140px; } }

/* Autres documents légaux : icône document + lien souligné à la largeur du texte */
body .elementor #mh-legal-side > div > div { width: fit-content; }
body .elementor #mh-legal-side svg { fill: none; }/* End custom CSS */