/* ========================================================================== */
/* PMH art direction 2026 — shared palette for the complete FR / EN website. */
/* ========================================================================== */

:root {
    --pmh-olive-deep: #3f523a;
    --pmh-brick: #a74436;
    --pmh-sand-light: #e2d5bf;
    --pmh-ivory-warm: #fcf8f0;
    --pmh-charcoal: #24211f;
}

html,
body {
    background: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

body :is(main#content, .site-main, .page-content) {
    color: var(--pmh-charcoal);
}

body :is(
    main#content,
    .site-main,
    .elementor[data-elementor-type="wp-page"],
    .elementor[data-elementor-type="wp-post"]
) :is(h1, h2, h3, h4, h5, h6),
body :is(
    main#content,
    .site-main,
    .elementor[data-elementor-type="wp-page"],
    .elementor[data-elementor-type="wp-post"]
) .elementor-heading-title {
    color: var(--pmh-brick) !important;
}

body .pmh-palette-dark-surface :is(h1, h2, h3, h4, h5, h6),
body .pmh-palette-dark-surface .elementor-heading-title {
    color: var(--pmh-sand-light) !important;
}

body :is(
    main#content,
    .site-main,
    .elementor[data-elementor-type="wp-page"],
    .elementor[data-elementor-type="wp-post"]
) :is(.elementor-button, button, input[type="button"], input[type="submit"]),
body :is(.pmh-news-archive__read-more, .pmh-news-archive__pagination .page-numbers.current) {
    background-color: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

body :is(
    main#content,
    .site-main,
    .elementor[data-elementor-type="wp-page"],
    .elementor[data-elementor-type="wp-post"]
) :is(.elementor-button, button, input[type="button"], input[type="submit"]):is(:hover, :focus-visible),
body .pmh-news-archive__read-more:is(:hover, :focus-visible) {
    background-color: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-sand-light) !important;
}

body :is(
    .elementor-widget-text-editor,
    .elementor-widget-theme-post-content,
    .entry-content,
    .pmh-news-archive
) a:not(.elementor-button) {
    color: var(--pmh-brick);
}

body ::selection {
    background: var(--pmh-brick);
    color: var(--pmh-ivory-warm);
}

body :is(input, select, textarea) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-charcoal) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

body :is(input, select, textarea):focus {
    border-color: var(--pmh-brick) !important;
    box-shadow: 0 0 0 1px var(--pmh-brick) !important;
    outline: 0 !important;
}

/* Header and navigation. */
body header :is(.elementor-element-c734754, .elementor-element-a563ca0) {
    background: rgba(252, 248, 240, 0.96) !important;
}

body header :is(.elementor-nav-menu--main, .elementor-nav-menu--dropdown) a {
    color: var(--pmh-charcoal) !important;
}

body header .elementor-nav-menu--dropdown {
    background: var(--pmh-ivory-warm) !important;
}

body header :is(.elementor-nav-menu--main, .elementor-nav-menu--dropdown) a:is(:hover, :focus-visible, .elementor-item-active, .highlighted) {
    color: var(--pmh-olive-deep) !important;
}

body header .elementor-menu-toggle {
    background: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

body header .elementor-button[href*="adher"],
body header .elementor-button[href*="join"],
body header .elementor-button[href*="get-involved"] {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

body header .elementor-button[href*="don"],
body header .elementor-button[href*="donate"],
body header .elementor-button[href*="soutenir"],
body header .elementor-button[href*="support"] {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

body header .elementor-sub-item {
    background: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

/* Every page hero uses olive, warm ivory and sand while keeping its image. */
:is(
    body.pdm-visual-hero-enabled main#content > .page-content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled main#content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) > .e-parent:first-child,
    body.pdm-visual-hero-enabled main.pmh-page > section:first-of-type,
    .pmh-news-hero,
    .pmh-news-archive__hero,
    .pmh-press-hero
) {
    background-color: var(--pmh-olive-deep) !important;
    background-blend-mode: multiply !important;
    color: var(--pmh-ivory-warm) !important;
}

:is(
    body.pdm-visual-hero-enabled main#content > .page-content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled main#content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) > .e-parent:first-child,
    body.pdm-visual-hero-enabled main.pmh-page > section:first-of-type,
    .pmh-press-hero
)::before {
    background: linear-gradient(90deg, rgba(63, 82, 58, 0.96), rgba(63, 82, 58, 0.64)) !important;
    opacity: 1 !important;
}

:is(
    body.pdm-visual-hero-enabled main#content > .page-content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled main#content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) > .e-parent:first-child,
    body.pdm-visual-hero-enabled main.pmh-page > section:first-of-type,
    .pmh-news-hero,
    .pmh-news-archive__hero,
    .pmh-press-hero
) :is(h1, h2, h3, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

:is(
    body.pdm-visual-hero-enabled main#content > .page-content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled main#content > .elementor > .e-parent:first-child,
    body.pdm-visual-hero-enabled .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) > .e-parent:first-child,
    body.pdm-visual-hero-enabled main.pmh-page > section:first-of-type,
    .pmh-news-hero,
    .pmh-news-archive__hero,
    .pmh-press-hero
) :is(p, li) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-news-hero,
.pmh-news-archive__hero {
    background-image: linear-gradient(120deg, #3f523a 0%, #34442f 100%) !important;
}

/* Footer. */
body footer .elementor-element-476e62c {
    background: var(--pmh-olive-deep) !important;
    background-image: none !important;
    color: var(--pmh-ivory-warm) !important;
}

body footer .elementor-element-476e62c :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

body footer .elementor-element-476e62c :is(p, li, a, span) {
    color: var(--pmh-ivory-warm) !important;
}

body footer .elementor-element-476e62c .elementor-social-icon {
    background: var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

body footer .elementor-element-476e62c :is(.elementor-divider-separator, hr) {
    border-color: var(--pmh-sand-light) !important;
}

/* Homepage situation and programmes. */
.pmh-situation-v2,
.pmh-programmes-v2 {
    --pmh-situation-navy: #24211f;
    --pmh-situation-blue: #a74436;
    --pmh-situation-sky: #e2d5bf;
    --pmh-situation-sand: #e2d5bf;
    --pmh-situation-olive: #3f523a;
    --pmh-situation-terra: #a74436;
    --pmh-programmes-navy: #24211f;
    --pmh-programmes-blue: #a74436;
    --pmh-programmes-cyan: #a74436;
    --pmh-programmes-sand: #e2d5bf;
    --pmh-programmes-olive: #3f523a;
    --pmh-programmes-terra: #a74436;
    --pmh-programmes-white: #fcf8f0;
}

.pmh-situation-v2 {
    background: linear-gradient(135deg, var(--pmh-ivory-warm), var(--pmh-sand-light)) !important;
    color: var(--pmh-charcoal) !important;
}

.pmh-situation-v2__headline,
.pmh-situation-v2__kicker,
.pmh-situation-v2__number {
    color: var(--pmh-brick) !important;
}

.pmh-situation-v2__headline em {
    color: var(--pmh-olive-deep) !important;
}

.pmh-situation-v2__action {
    background: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

.pmh-situation-v2__action :is(p, span, strong),
.pmh-situation-v2__action-number {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-situation-v2__action-label {
    color: var(--pmh-sand-light) !important;
}

.pmh-situation-v2__link--primary {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

.pmh-situation-v2__link:not(.pmh-situation-v2__link--primary) {
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-olive-deep) !important;
}

.pmh-programmes-v2 {
    background: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

.pmh-programmes-v2 :is(h2, .pmh-programmes-v2__kicker) {
    color: var(--pmh-brick) !important;
}

.pmh-programmes-v2__card--care {
    background: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

.pmh-programmes-v2__card--care :is(p, span, strong, a) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-programmes-v2__card--care :is(h3, .pmh-programmes-v2__card-label) {
    color: var(--pmh-sand-light) !important;
}

.pmh-programmes-v2__card--future,
.pmh-programmes-v2__method {
    background: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

.pmh-programmes-v2__card--future h3,
.pmh-programmes-v2__method-title {
    color: var(--pmh-brick) !important;
}

.pmh-programmes-v2__card--future {
    border-color: var(--pmh-olive-deep) !important;
}

.pmh-programmes-v2__card a {
    border-color: currentColor !important;
}

/* Homepage common method: olive section, ivory/sand cards and brick titles. */
body.home .elementor-element-5116b20b {
    background: var(--pmh-olive-deep) !important;
}

body.home .elementor-element-5116b20b > .e-con-inner > :is(.elementor-widget-heading, .elementor-widget-text-editor) :is(h2, p),
body.home .elementor-element-b974621c .elementor-heading-title {
    color: var(--pmh-sand-light) !important;
}

body.home :is(
    .elementor-element-cc009bea,
    .elementor-element-3a893513
) {
    background: var(--pmh-ivory-warm) !important;
}

body.home :is(
    .elementor-element-7e7686a2,
    .elementor-element-e75794a5
) {
    background: var(--pmh-sand-light) !important;
}

body.home :is(
    .elementor-element-cc009bea,
    .elementor-element-7e7686a2,
    .elementor-element-e75794a5,
    .elementor-element-3a893513
) :is(h3, h4, .elementor-heading-title) {
    color: var(--pmh-brick) !important;
}

body.home :is(
    .elementor-element-cc009bea,
    .elementor-element-7e7686a2,
    .elementor-element-e75794a5,
    .elementor-element-3a893513
) :is(p, li) {
    color: var(--pmh-charcoal) !important;
}

/* News landing and generated category archives. */
.pmh-news-topics,
.pmh-news-archive__topics {
    background: var(--pmh-sand-light) !important;
}

.pmh-news-feed,
.pmh-news-archive,
.pmh-news-archive__feed {
    background: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

.pmh-news-cta {
    background: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

.pmh-news-cta :is(h2, h3, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

.pmh-news-cta :is(p, li) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-news-archive__eyebrow,
.pmh-news-archive__hero h1 {
    color: var(--pmh-sand-light) !important;
}

.pmh-news-archive__hero-copy {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-news-archive__accent span:nth-child(1) { background: var(--pmh-charcoal) !important; }
.pmh-news-archive__accent span:nth-child(2) { background: var(--pmh-ivory-warm) !important; }
.pmh-news-archive__accent span:nth-child(3) { background: var(--pmh-olive-deep) !important; }
.pmh-news-archive__accent span:nth-child(4) { background: var(--pmh-brick) !important; }

.pmh-news-archive__topics h2,
.pmh-news-archive__feed h2,
.pmh-news-archive__card h2,
.pmh-news-archive__card h2 a {
    color: var(--pmh-brick) !important;
}

.pmh-news-archive__filters a {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-olive-deep) !important;
}

.pmh-news-archive__filters a:is(:hover, :focus-visible, .is-active) {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

.pmh-news-archive__card {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-brick) !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 48px rgba(36, 33, 31, 0.12) !important;
}

.pmh-news-archive__date,
.pmh-news-archive__excerpt,
.pmh-news-archive__intro {
    color: var(--pmh-charcoal) !important;
}

.pmh-news-archive__pagination .page-numbers {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-olive-deep) !important;
}

.pmh-news-archive__pagination :is(.page-numbers.current, a.page-numbers:hover) {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

.pmh-news-archive__empty {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-charcoal) !important;
}

/* Common cards, posts, markers and structural rules. */
body :is(.elementor-post__card, .elementor-loop-container .e-loop-item) {
    background-color: var(--pmh-ivory-warm) !important;
    border-radius: 0 !important;
}

body :is(.elementor-post__title, .elementor-post__title a) {
    color: var(--pmh-brick) !important;
}

body main#content .elementor-post__card a:not(.elementor-button) {
    color: var(--pmh-brick) !important;
}

body main#content video {
    background-color: var(--pmh-olive-deep) !important;
}

body :is(.elementor-post__excerpt, .elementor-post__meta-data) {
    color: var(--pmh-charcoal) !important;
}

body :is(.elementor-divider-separator, hr) {
    border-color: var(--pmh-charcoal);
}

body .elementor-widget-icon .elementor-icon,
body .elementor-icon-box-icon .elementor-icon {
    color: var(--pmh-brick);
}

/* Contrast-safe component system. Dark surfaces never pair olive with brick:
   they use ivory/sand for text and light buttons with a charcoal label. */
body .pmh-palette-dark-surface :is(p, li) {
    color: var(--pmh-ivory-warm) !important;
}

body .pmh-palette-dark-surface a:not(.elementor-button) {
    color: var(--pmh-sand-light) !important;
    text-decoration-color: currentColor !important;
}

body .pmh-palette-dark-surface a:not(.elementor-button):is(:hover, :focus-visible) {
    color: var(--pmh-ivory-warm) !important;
}

body .pmh-palette-dark-surface :is(
    .elementor-button,
    button,
    input[type="button"],
    input[type="submit"]
) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

body .pmh-palette-dark-surface :is(
    .elementor-button,
    button,
    input[type="button"],
    input[type="submit"]
):is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

body :is(.elementor-button, button, input[type="button"], input[type="submit"]) {
    transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease !important;
}

body :is(.elementor-button, button, input[type="button"], input[type="submit"]):focus-visible,
body a:focus-visible {
    outline: 3px solid var(--pmh-sand-light) !important;
    outline-offset: 3px !important;
}

body header .elementor-button[href*="adher"]:is(:hover, :focus-visible),
body header .elementor-button[href*="join"]:is(:hover, :focus-visible),
body header .elementor-button[href*="get-involved"]:is(:hover, :focus-visible),
body header .elementor-button[href*="don"]:is(:hover, :focus-visible),
body header .elementor-button[href*="donate"]:is(:hover, :focus-visible),
body header .elementor-button[href*="soutenir"]:is(:hover, :focus-visible),
body header .elementor-button[href*="support"]:is(:hover, :focus-visible) {
    background: var(--pmh-charcoal) !important;
    border-color: var(--pmh-charcoal) !important;
    color: var(--pmh-ivory-warm) !important;
}

body footer .elementor-element-476e62c .elementor-social-icon {
    background: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

body footer .elementor-element-476e62c .elementor-social-icon:is(:hover, :focus-visible) {
    background: var(--pmh-ivory-warm) !important;
    color: var(--pmh-olive-deep) !important;
}

/* The fixed newsletter action had retained an unrelated blue. A light control
   remains legible over both the page and the olive footer. */
body .pmh-newsletter-trigger {
    background: var(--pmh-ivory-warm) !important;
    border: 2px solid var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    box-shadow: 0 12px 28px rgba(36, 33, 31, 0.2) !important;
    color: var(--pmh-olive-deep) !important;
}

body .pmh-newsletter-trigger > * {
    color: inherit !important;
}

body .pmh-newsletter-trigger:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

body .pmh-newsletter-close {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

/* How we act / Comment nous agissons: remove the decorative font icons and
   turn the four method cards into restrained editorial panels. */
body:is(.page-id-5668, .page-id-8173) :is(
    .elementor-element-0b3bf83,
    .elementor-element-e365317,
    .elementor-element-5c8d7de,
    .elementor-element-35c98e8
) {
    display: none !important;
}

body:is(.page-id-5668, .page-id-8173) :is(
    .elementor-element-e590616,
    .elementor-element-80c0a81,
    .elementor-element-a25852f,
    .elementor-element-dcd8836
) {
    background: var(--pmh-sand-light) !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-top: 4px solid var(--pmh-olive-deep) !important;
    color: var(--pmh-charcoal) !important;
}

body:is(.page-id-5668, .page-id-8173) :is(
    .elementor-element-80c0a81,
    .elementor-element-dcd8836
) {
    border-top-color: var(--pmh-brick) !important;
}

body:is(.page-id-5668, .page-id-8173) :is(
    .elementor-element-e590616,
    .elementor-element-80c0a81,
    .elementor-element-a25852f,
    .elementor-element-dcd8836
) :is(.elementor-icon-box-title, .elementor-icon-box-description) {
    color: var(--pmh-charcoal) !important;
}

/* Homepage — editorial four-step method section. */
.pmh-method-v2__legacy {
    display: none !important;
}

.pmh-method-v2,
.pmh-method-v2 *,
.pmh-method-v2 *::before,
.pmh-method-v2 *::after {
    box-sizing: border-box;
}

.pmh-method-v2 {
    background: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
    padding: clamp(58px, 5vw, 78px) 0 clamp(62px, 5.5vw, 88px);
}

.pmh-method-v2__inner {
    margin: 0 auto;
    width: min(calc(100% - 64px), 1440px);
}

.pmh-method-v2__intro {
    align-items: start;
    display: grid;
    gap: clamp(48px, 8vw, 128px);
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
}

.pmh-method-v2__kicker {
    align-items: center;
    color: var(--pmh-sand-light) !important;
    display: flex;
    font-size: 16px;
    font-weight: 800;
    gap: 16px;
    letter-spacing: 0.16em;
    margin: 0 0 28px;
    text-transform: uppercase;
}

.pmh-method-v2__kicker span {
    background: var(--pmh-brick) !important;
    display: block;
    flex: 0 0 50px;
    height: 3px;
}

.pmh-method-v2 h2,
body .pmh-method-v2 h2#pmh-method-v2-title {
    color: var(--pmh-sand-light) !important;
    font-size: clamp(44px, 4vw, 66px);
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1.02;
    margin: 0;
    max-width: 720px;
}

.pmh-method-v2__summary {
    color: var(--pmh-ivory-warm) !important;
    font-size: clamp(18px, 1.45vw, 22px);
    line-height: 1.75;
    margin: 20px 0 0;
    max-width: 700px;
}

.pmh-method-v2__steps {
    border-top: 2px solid var(--pmh-sand-light);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: clamp(54px, 6vw, 82px);
}

.pmh-method-v2__step {
    border-left: 1px solid rgba(226, 213, 191, 0.42);
    min-height: 300px;
    padding: 34px clamp(24px, 2.4vw, 38px) 12px;
}

.pmh-method-v2__step:first-child {
    border-left: 0;
    padding-left: 0;
}

.pmh-method-v2__number {
    color: var(--pmh-sand-light) !important;
    font-size: 17px;
    font-style: italic;
    font-weight: 800;
    line-height: 1;
    margin: 0 0 clamp(54px, 5vw, 76px);
}

.pmh-method-v2__step h3,
body .pmh-method-v2__step h3 {
    color: var(--pmh-sand-light) !important;
    font-size: clamp(25px, 2vw, 31px);
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.15;
    margin: 0 0 20px;
}

.pmh-method-v2__step > p:last-child {
    color: var(--pmh-ivory-warm) !important;
    font-size: clamp(15px, 1.15vw, 17px);
    line-height: 1.6;
    margin: 0;
    max-width: 310px;
}

@media (max-width: 1024px) {
    .pmh-method-v2__intro {
        gap: 42px;
    }

    .pmh-method-v2__steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pmh-method-v2__step {
        min-height: 270px;
    }

    .pmh-method-v2__step:nth-child(odd) {
        border-left: 0;
        padding-left: 0;
    }

    .pmh-method-v2__step:nth-child(n + 3) {
        border-top: 1px solid rgba(226, 213, 191, 0.42);
    }
}

@media (max-width: 767px) {
    .pmh-method-v2 {
        padding: 50px 0 56px;
    }

    .pmh-method-v2__inner {
        width: min(calc(100% - 32px), 1440px);
    }

    .pmh-method-v2__intro {
        gap: 24px;
        grid-template-columns: 1fr;
    }

    .pmh-method-v2__kicker {
        font-size: 13px;
        gap: 12px;
        margin-bottom: 20px;
    }

    .pmh-method-v2__kicker span {
        flex-basis: 38px;
    }

    .pmh-method-v2 h2,
    body .pmh-method-v2 h2#pmh-method-v2-title {
        font-size: clamp(38px, 11vw, 48px);
    }

    .pmh-method-v2__summary {
        font-size: 17px;
        line-height: 1.6;
        margin-top: 0;
    }

    .pmh-method-v2__steps {
        grid-template-columns: 1fr;
        margin-top: 42px;
    }

    .pmh-method-v2__step,
    .pmh-method-v2__step:first-child,
    .pmh-method-v2__step:nth-child(odd) {
        border-left: 0;
        min-height: 0;
        padding: 28px 0 32px;
    }

    .pmh-method-v2__step:nth-child(n + 2) {
        border-top: 1px solid rgba(226, 213, 191, 0.42);
    }

    .pmh-method-v2__number {
        margin-bottom: 30px;
    }

    .pmh-method-v2__step h3,
    body .pmh-method-v2__step h3 {
        font-size: 27px;
        margin-bottom: 14px;
    }

    .pmh-method-v2__step > p:last-child {
        font-size: 16px;
        max-width: 100%;
    }
}

/* Homepage — three editorial contribution choices. */
.pmh-actions-v2__legacy {
    display: none !important;
}

.pmh-actions-v2,
.pmh-actions-v2 *,
.pmh-actions-v2 *::before,
.pmh-actions-v2 *::after {
    box-sizing: border-box;
}

.pmh-actions-v2 {
    background: var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
    padding: clamp(58px, 5vw, 78px) 0 clamp(64px, 5.5vw, 86px);
}

.pmh-actions-v2__inner {
    margin: 0 auto;
    width: min(calc(100% - 64px), 1440px);
}

.pmh-actions-v2__intro {
    align-items: start;
    display: grid;
    gap: clamp(48px, 8vw, 128px);
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
}

.pmh-actions-v2__kicker {
    color: var(--pmh-sand-light) !important;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0.16em;
    margin: 0 0 26px;
    text-transform: uppercase;
}

.pmh-actions-v2 h2,
body .pmh-actions-v2 h2#pmh-actions-v2-title {
    color: var(--pmh-sand-light) !important;
    font-size: clamp(44px, 4vw, 66px);
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1.08;
    margin: 0;
    max-width: 720px;
}

.pmh-actions-v2__summary {
    color: var(--pmh-ivory-warm) !important;
    font-size: clamp(18px, 1.45vw, 22px);
    line-height: 1.75;
    margin: 4px 0 0;
    max-width: 720px;
}

.pmh-actions-v2__cards {
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: clamp(54px, 6vw, 82px);
}

.pmh-actions-v2__card {
    background: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    border-top: 8px solid var(--pmh-charcoal);
    color: var(--pmh-charcoal) !important;
    display: flex;
    flex-direction: column;
    min-height: 360px;
    padding: clamp(34px, 3.2vw, 48px);
}

.pmh-actions-v2__card--join {
    border-top-color: var(--pmh-olive-deep);
}

.pmh-actions-v2__card--capacity {
    border-top-color: var(--pmh-brick);
}

.pmh-actions-v2__number {
    color: var(--pmh-brick) !important;
    font-size: 17px;
    font-weight: 800;
    line-height: 1;
    margin: 0 0 clamp(44px, 4vw, 62px);
}

.pmh-actions-v2__card--join .pmh-actions-v2__number {
    color: var(--pmh-olive-deep) !important;
}

.pmh-actions-v2__card--capacity .pmh-actions-v2__number {
    color: var(--pmh-charcoal) !important;
}

.pmh-actions-v2__card h3,
body .pmh-actions-v2__card h3 {
    color: var(--pmh-charcoal) !important;
    font-size: clamp(25px, 2vw, 31px);
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.18;
    margin: 0 0 20px;
}

.pmh-actions-v2__card > p:not(.pmh-actions-v2__number) {
    color: var(--pmh-charcoal) !important;
    font-size: clamp(15px, 1.12vw, 17px);
    line-height: 1.62;
    margin: 0 0 26px;
    max-width: 390px;
}

.pmh-actions-v2__card a {
    align-items: center;
    align-self: flex-start;
    border-bottom: 2px solid var(--pmh-charcoal);
    color: var(--pmh-charcoal) !important;
    display: inline-flex;
    font-size: 16px;
    font-weight: 800;
    gap: 7px;
    line-height: 1.3;
    margin-top: auto;
    padding: 0 0 8px;
    text-decoration: none;
}

.pmh-actions-v2__card a:is(:hover, :focus-visible) {
    border-color: var(--pmh-brick);
    color: var(--pmh-brick) !important;
}

@media (max-width: 1024px) {
    .pmh-actions-v2__intro {
        gap: 42px;
    }

    .pmh-actions-v2__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pmh-actions-v2__card--capacity {
        grid-column: 1 / -1;
        min-height: 320px;
    }

    .pmh-actions-v2__card--capacity > p:not(.pmh-actions-v2__number) {
        max-width: 620px;
    }
}

@media (max-width: 767px) {
    .pmh-actions-v2 {
        padding: 50px 0 56px;
    }

    .pmh-actions-v2__inner {
        width: min(calc(100% - 32px), 1440px);
    }

    .pmh-actions-v2__intro {
        gap: 24px;
        grid-template-columns: 1fr;
    }

    .pmh-actions-v2__kicker {
        font-size: 13px;
        margin-bottom: 20px;
    }

    .pmh-actions-v2 h2,
    body .pmh-actions-v2 h2#pmh-actions-v2-title {
        font-size: clamp(38px, 11vw, 48px);
    }

    .pmh-actions-v2__summary {
        font-size: 17px;
        line-height: 1.6;
        margin-top: 0;
    }

    .pmh-actions-v2__cards {
        grid-template-columns: 1fr;
        margin-top: 42px;
    }

    .pmh-actions-v2__card,
    .pmh-actions-v2__card--capacity {
        grid-column: auto;
        min-height: 320px;
        padding: 32px 28px;
    }

    .pmh-actions-v2__number {
        margin-bottom: 34px;
    }

    .pmh-actions-v2__card h3,
    body .pmh-actions-v2__card h3 {
        font-size: 27px;
        margin-bottom: 14px;
    }

    .pmh-actions-v2__card > p:not(.pmh-actions-v2__number) {
        font-size: 16px;
        max-width: 100%;
    }
}

/* -------------------------------------------------------------------------
   Final art-direction pass — component-level colour roles
   ------------------------------------------------------------------------- */

/* Small type needs normal-text contrast. Sand remains available for large
   display headings on brick, while labels use ivory (5.63:1). */
.pmh-actions-v2__kicker,
.pmh-programmes-v2__card--care .pmh-programmes-v2__card-label {
    color: var(--pmh-ivory-warm) !important;
}

/* No brick accents are placed directly on olive sections. */
.pmh-method-v2__kicker span {
    background: var(--pmh-sand-light) !important;
}

/* Mission page actions. */
body main#content .pdm-button-light,
body main#content .pdm-action-card:nth-child(3) .pdm-newsletter-toggle {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

html body .pdm-button-light,
html body .pdm-action-card:nth-child(3) .pdm-newsletter-toggle {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

html body .elementor .pdm-action-card.pmh-palette-dark-surface a.pdm-button-light,
html body .elementor .pdm-action-card.pmh-palette-dark-surface .pdm-newsletter-form button.pdm-newsletter-toggle {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

body main#content .pdm-button-light:is(:hover, :focus-visible),
body main#content .pdm-action-card:nth-child(3) .pdm-newsletter-toggle:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

html body .pdm-button-light:is(:hover, :focus-visible),
html body .pdm-action-card:nth-child(3) .pdm-newsletter-toggle:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

html body .elementor .pdm-action-card.pmh-palette-dark-surface a.pdm-button-light:is(:hover, :focus-visible),
html body .elementor .pdm-action-card.pmh-palette-dark-surface .pdm-newsletter-form button.pdm-newsletter-toggle:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

body main#content .pdm-button-dark {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body .pdm-button-dark {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

body main#content .pdm-button-dark:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body .pdm-button-dark:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

/* Editorial links and badges that still carried the former blue system. */
body main#content .elementor-post__badge {
    background: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body .pmh-programmes-v2__card--care a {
    color: var(--pmh-ivory-warm) !important;
}

html body .pmh-programmes-v2__card--care.pmh-palette-dark-surface a {
    color: var(--pmh-ivory-warm) !important;
}

body main#content :is(.elementor-post__read-more, .pmh-impact-snapshot__link) {
    color: var(--pmh-brick) !important;
    text-decoration-color: currentColor !important;
}

html body #content :is(.elementor-post__badge, .elementor-post__read-more, .pmh-impact-snapshot__link) {
    color: var(--pmh-brick) !important;
}

html body #content .elementor-post__badge {
    background: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

body main#content :is(.elementor-post__read-more, .pmh-impact-snapshot__link):is(:hover, :focus-visible) {
    color: var(--pmh-olive-deep) !important;
}

/* Hand-authored membership and donation templates use inline CTA styles. */
body #content main.pmh-page a[style*="background"] {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

body #content main.pmh-page a[style*="background"]:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

body #content main.pmh-page > section:first-of-type > div > p:first-child {
    color: var(--pmh-sand-light) !important;
}

body #content main.pmh-page > section:first-of-type a[style*="background"] {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

body #content main.pmh-page > section:first-of-type a[style*="background"]:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

/* Press pages: flat olive dark sections, warm editorial cards and a complete
   link/button system within the approved palette. */
.pmh-press-hero,
.pmh-press-contact,
.pmh-press-cta {
    background-color: var(--pmh-olive-deep) !important;
    background-image: none !important;
    color: var(--pmh-ivory-warm) !important;
}

html body :is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-kicker {
    color: var(--pmh-sand-light) !important;
}

html body #content .pmh-press-card,
html body #content .pmh-press-card__visual {
    background-color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-press-card__title-link {
    color: var(--pmh-brick) !important;
}

html body #content .pmh-press-card__body a:not(.pmh-press-card__title-link),
html body #content .pmh-press-timeline a,
html body #content .pmh-press-update a {
    color: var(--pmh-olive-deep) !important;
}

:is(
    .pmh-press-card__body a:not(.pmh-press-card__title-link),
    .pmh-press-card__title-link,
    .pmh-press-timeline a,
    .pmh-press-update a
):is(:hover, :focus-visible) {
    color: var(--pmh-brick) !important;
}

:is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--primary {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

:is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--primary:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

:is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--secondary {
    background: transparent !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-sand-light) !important;
}

:is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--secondary:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

/* Newsletter dialog: remove the legacy navy/blue treatment. */
body .pmh-newsletter-backdrop {
    background: rgba(36, 33, 31, 0.84) !important;
}

body .pmh-newsletter-panel {
    background: var(--pmh-olive-deep) !important;
    border: 1px solid var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

body .pmh-newsletter-panel h2 {
    color: var(--pmh-sand-light) !important;
}

body .pmh-newsletter-panel > p {
    color: var(--pmh-ivory-warm) !important;
}

/* -------------------------------------------------------------------------
   2.3.3 regression guard — explicit component ownership

   Light cards nested inside a dark section must keep their own foreground
   system. Payment widgets and editorial templates also need to override the
   legacy inline navy/blue declarations that are printed after this sheet.
   ------------------------------------------------------------------------- */

/* Homepage contribution cards: charcoal links on sand, olive on interaction. */
html body #content .pmh-actions-v2 .pmh-actions-v2__card a {
    background: transparent !important;
    border-color: var(--pmh-charcoal) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-actions-v2 .pmh-actions-v2__card a:is(:hover, :focus-visible) {
    background: transparent !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-olive-deep) !important;
}

/* Hand-authored page links: remove browser blue while preserving CTA buttons. */
html body #content main.pmh-page a:not(.elementor-button):not([style*="background"]),
html body #content .pdm-seo-trust-block a,
html body #content .pmh-news-archive__pagination .page-numbers:not(.current) {
    color: var(--pmh-olive-deep) !important;
    text-decoration-color: currentColor !important;
}

html body #content main.pmh-page a:not(.elementor-button):not([style*="background"]):is(:hover, :focus-visible),
html body #content .pdm-seo-trust-block a:is(:hover, :focus-visible),
html body #content .pmh-news-archive__pagination .page-numbers:not(.current):is(:hover, :focus-visible) {
    color: var(--pmh-brick) !important;
}

html body #content .pmh-news-archive__pagination .page-numbers {
    border-radius: 0 !important;
}

/* Stripe donation form — approved palette, rectangular geometry and contrast. */
html body #content .pmh-donation {
    --navy: var(--pmh-charcoal);
    --blue: var(--pmh-olive-deep);
    --red: var(--pmh-brick);
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation__intro {
    background: var(--pmh-olive-deep) !important;
    background-image: none !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-donation__intro h2 {
    color: var(--pmh-sand-light) !important;
}

html body #content .pmh-donation__eyebrow {
    color: var(--pmh-sand-light) !important;
}

html body #content .pmh-donation__intro p:last-child {
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-donation__form {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 40px rgba(36, 33, 31, 0.10) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation :is(legend, label, strong) {
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation :is(input[type="text"], input[type="email"], input[type="number"]) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-charcoal) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation :is(.pmh-donation__frequencies span, .pmh-donation__amounts span) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation :is(.pmh-donation__frequencies input, .pmh-donation__amounts input):checked + span {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-olive-deep) !important;
    box-shadow: inset 0 0 0 1px var(--pmh-olive-deep) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation :is(.pmh-donation__tax, .pmh-donation__privacy) {
    background: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation :is(.pmh-donation__legal, .pmh-donation__stripe, .pmh-donation__portal small) {
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation a:not(.pmh-donation__portal a) {
    color: var(--pmh-brick) !important;
}

html body #content .pmh-donation a:not(.pmh-donation__portal a):is(:hover, :focus-visible) {
    color: var(--pmh-olive-deep) !important;
}

html body #content .pmh-donation__privacy a {
    color: var(--pmh-olive-deep) !important;
}

html body #content .pmh-donation__privacy a:is(:hover, :focus-visible) {
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-donation__submit {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-donation__submit:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-donation__portal a {
    background: transparent !important;
    border-color: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-olive-deep) !important;
}

html body #content .pmh-donation__portal a:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

/* Stripe membership form uses the same editorial and interaction language. */
html body #content .pmh-membership {
    --pmh-navy: var(--pmh-charcoal);
    --pmh-blue: var(--pmh-olive-deep);
    --pmh-red: var(--pmh-brick);
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership__intro {
    background: var(--pmh-olive-deep) !important;
    background-image: none !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-membership__intro h2 {
    color: var(--pmh-sand-light) !important;
}

html body #content .pmh-membership__eyebrow {
    color: var(--pmh-sand-light) !important;
}

html body #content .pmh-membership__intro p:last-child {
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-membership__form,
html body #content .pmh-membership--embedded .pmh-membership__form {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 40px rgba(36, 33, 31, 0.10) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership :is(legend, label, strong, .pmh-membership__privacy-notice h3) {
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership :is(input[type="text"], input[type="email"], input[type="number"]) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-charcoal) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership :is(.pmh-membership__amount span, .pmh-membership__donation-toggle) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership .pmh-membership__amount input:checked + span,
html body #content .pmh-membership .pmh-membership__donation-toggle:has(input:checked) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-olive-deep) !important;
    box-shadow: inset 0 0 0 1px var(--pmh-olive-deep) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership :is(.pmh-membership__consents, .pmh-membership__privacy-notice, .pmh-membership__tax) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership :is(.pmh-membership__help, .pmh-membership__legal, .pmh-membership__stripe, .pmh-membership__donation-copy small) {
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-membership a {
    color: var(--pmh-brick) !important;
}

html body #content .pmh-membership a:is(:hover, :focus-visible) {
    color: var(--pmh-olive-deep) !important;
}

html body #content .pmh-membership__submit {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-membership__submit:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-membership__donation-check {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-charcoal) !important;
    border-radius: 0 !important;
}

html body #content .pmh-membership__donation-toggle input:checked + .pmh-membership__donation-check {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
}

/* Press buttons: outrank page-specific inline styles printed after this file. */
html body #content :is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--primary {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

html body #content :is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--primary:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content :is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--secondary {
    background: transparent !important;
    border-color: var(--pmh-sand-light) !important;
    border-radius: 0 !important;
    color: var(--pmh-sand-light) !important;
}

html body #content :is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) .pmh-press-btn--secondary:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

html body #content .pmh-press-section .pmh-press-btn--secondary {
    background: transparent !important;
    border-color: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-olive-deep) !important;
}

html body #content .pmh-press-section .pmh-press-btn--secondary:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .pmh-press-section a:not(.pmh-press-btn):not(.pmh-press-card__title-link) {
    color: var(--pmh-olive-deep) !important;
    text-decoration-color: currentColor !important;
}

html body #content .pmh-press-section a:not(.pmh-press-btn):not(.pmh-press-card__title-link):is(:hover, :focus-visible) {
    color: var(--pmh-brick) !important;
}

html body #content :is(.pmh-press-hero, .pmh-press-contact, .pmh-press-cta) a:not(.pmh-press-btn) {
    color: var(--pmh-sand-light) !important;
}

/* News filters and Elementor pagination still print page-level legacy colours. */
html body #content .pmh-news-filters a {
    background: var(--pmh-ivory-warm) !important;
    border: 1px solid var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-olive-deep) !important;
}

html body #content .pmh-news-filters a:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body #content .elementor-pagination a.page-numbers {
    background: transparent !important;
    border-color: var(--pmh-olive-deep) !important;
    border-radius: 0 !important;
    color: var(--pmh-olive-deep) !important;
}

html body #content .elementor-pagination a.page-numbers:is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

html body header .elementor-nav-menu--dropdown .elementor-sub-item {
    background: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

/* ========================================================================== */
/* 2.3.5 — pathway pages: editorial rhythm, contrast and image treatments.   */
/* ========================================================================== */

/* The three case-study pages share the same Elementor structure in FR / EN. */
body:is(
    .page-id-6304,
    .page-id-6287,
    .page-id-6115,
    .page-id-8500,
    .page-id-8498,
    .page-id-8449
) main#content {
    background: var(--pmh-ivory-warm) !important;
}

/* Break the long sand-coloured flat area into clearly paced editorial bands. */
body:is(.page-id-6304, .page-id-8500) .elementor-element-8f550e3 {
    background: var(--pmh-ivory-warm) !important;
}

body:is(.page-id-6304, .page-id-8500) :is(
    .elementor-element-a144f74,
    .elementor-element-96b9db5
) {
    background: var(--pmh-sand-light) !important;
    border-left: 4px solid var(--pmh-olive-deep) !important;
    box-shadow: 0 14px 30px rgba(36, 33, 31, 0.10) !important;
}

body:is(.page-id-6304, .page-id-8500) .elementor-element-c695d48 {
    background: var(--pmh-ivory-warm) !important;
    border-left: 4px solid var(--pmh-brick) !important;
    box-shadow: 0 14px 30px rgba(36, 33, 31, 0.10) !important;
}

body:is(.page-id-6304, .page-id-8500) .elementor-element-8d1faa0 {
    background: var(--pmh-sand-light) !important;
}

body:is(.page-id-6304, .page-id-8500) .elementor-element-5e64894 > .elementor-widget-container {
    background: var(--pmh-ivory-warm) !important;
    border-left-color: var(--pmh-brick) !important;
    color: var(--pmh-charcoal) !important;
}

body:is(.page-id-6304, .page-id-8500) :is(
    .elementor-element-204f4cc,
    .elementor-element-765579a
) {
    background: var(--pmh-ivory-warm) !important;
}

body:is(
    .page-id-6304,
    .page-id-6287,
    .page-id-6115,
    .page-id-8500,
    .page-id-8498,
    .page-id-8449
) :is(
    .elementor-element-8f550e3,
    .elementor-element-8d1faa0,
    .elementor-element-204f4cc
) :is(p, li, .elementor-icon-list-text) {
    color: var(--pmh-charcoal) !important;
}

/* Replace the remaining navy overlays at the bottom of specialist pages. */
body:is(.page-id-6304, .page-id-8500) .elementor-element-753291f::before {
    background-image: linear-gradient(
        90deg,
        rgba(63, 82, 58, 0.96) 0%,
        rgba(63, 82, 58, 0.88) 58%,
        rgba(63, 82, 58, 0.72) 100%
    ) !important;
}

body:is(.page-id-6304, .page-id-8500) :is(
    .elementor-element-2f79a0c,
    .elementor-element-608d118
)::before {
    background-image: linear-gradient(
        180deg,
        rgba(63, 82, 58, 0.18) 0%,
        rgba(63, 82, 58, 0.96) 100%
    ) !important;
}

body:is(.page-id-6304, .page-id-8500) :is(
    .elementor-element-753291f,
    .elementor-element-2f79a0c,
    .elementor-element-608d118
) :is(p, li, span) {
    color: var(--pmh-ivory-warm) !important;
}

body:is(.page-id-6304, .page-id-8500) :is(
    .elementor-element-753291f,
    .elementor-element-2f79a0c,
    .elementor-element-608d118
) :is(h2, h3, h4, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

/* Illustrated method cards: retain the photograph, replace navy by olive. */
body:is(
    .page-id-6304,
    .page-id-6287,
    .page-id-6115,
    .page-id-8500,
    .page-id-8498,
    .page-id-8449
) .elementor-element-eea9951 {
    background-color: var(--pmh-olive-deep) !important;
}

body:is(
    .page-id-6304,
    .page-id-6287,
    .page-id-6115,
    .page-id-8500,
    .page-id-8498,
    .page-id-8449
) .elementor-element-827eed7 {
    background: rgba(63, 82, 58, 0.88) !important;
}

body:is(
    .page-id-6304,
    .page-id-6287,
    .page-id-6115,
    .page-id-8500,
    .page-id-8498,
    .page-id-8449
) .elementor-element-eea9951 :is(p, li, span) {
    color: var(--pmh-ivory-warm) !important;
}

body:is(
    .page-id-6304,
    .page-id-6287,
    .page-id-6115,
    .page-id-8500,
    .page-id-8498,
    .page-id-8449
) .elementor-element-eea9951 :is(h2, h3, h4, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

/* The final support panel uses olive; its two actions are no longer tone-on-tone. */
body:is(.page-id-6115, .page-id-8449) .elementor-element-e061087 {
    background: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

body:is(.page-id-6115, .page-id-8449) .elementor-element-e061087 :is(p, li, span) {
    color: var(--pmh-ivory-warm) !important;
}

body:is(.page-id-6115, .page-id-8449) .elementor-element-e061087 :is(h2, h3, h4, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

body:is(.page-id-6115, .page-id-8449) .elementor-element-e061087 .elementor-element-60ce0db .elementor-button {
    background: var(--pmh-brick) !important;
    border-color: var(--pmh-brick) !important;
    color: var(--pmh-ivory-warm) !important;
}

body:is(.page-id-6115, .page-id-8449) .elementor-element-e061087 .elementor-element-dfbfe08 .elementor-button {
    background: transparent !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-sand-light) !important;
}

body:is(.page-id-6115, .page-id-8449) .elementor-element-e061087 :is(
    .elementor-element-60ce0db,
    .elementor-element-dfbfe08
) .elementor-button:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

/* Other large support bands on the pathway pages follow the same contrast. */
body:is(
    .page-id-6287,
    .page-id-6115,
    .page-id-8498,
    .page-id-8449
) .elementor-element-89d1f27 {
    background: var(--pmh-olive-deep) !important;
}

body:is(
    .page-id-6287,
    .page-id-6115,
    .page-id-8498,
    .page-id-8449
) .elementor-element-89d1f27 :is(p, li, span) {
    color: var(--pmh-ivory-warm) !important;
}

body:is(
    .page-id-6287,
    .page-id-6115,
    .page-id-8498,
    .page-id-8449
) .elementor-element-89d1f27 :is(h2, h3, h4, .elementor-heading-title) {
    color: var(--pmh-sand-light) !important;
}

/* WordPress posts previously began underneath the fixed desktop navigation. */
@media (min-width: 1025px) {
    body.single-post main.site-main {
        padding-top: 140px !important;
    }

    body.single-post main.site-main > .page-content > h1:first-child {
        box-sizing: border-box;
        font-size: clamp(40px, 4.4vw, 56px) !important;
        line-height: 1.12 !important;
        margin: 36px auto 28px !important;
        max-width: 1200px;
        padding-inline: 24px;
        width: 100%;
    }
}

/* Keep the complete desktop navigation visible on compact laptop widths. */
@media (min-width: 1025px) and (max-width: 1366px) {
    html body .elementor-element-c734754 > .e-con-inner .elementor-element-8d6f6b8 {
        margin-left: 20px !important;
    }

    html body .elementor-element-c734754 > .e-con-inner .elementor-element-34662ec {
        flex: 0 0 108px !important;
        margin-left: 8px !important;
        margin-right: 6px !important;
        max-width: 108px !important;
        width: 108px !important;
    }

    html body .elementor-element-c734754 > .e-con-inner .elementor-element-0f612b4 {
        flex: 0 0 108px !important;
        max-width: 108px !important;
        width: 108px !important;
    }

    html body .elementor-element-c734754 > .e-con-inner :is(
        .elementor-element-34662ec,
        .elementor-element-0f612b4
    ) .elementor-button {
        min-width: 0 !important;
        padding-inline: 8px !important;
        width: 100% !important;
    }
}

/* ========================================================================== */
/* Mission page — editorial composition inspired by the approved art board.   */
/* ========================================================================== */

body:is(.page-id-12, .page-id-8167) .elementor:is(
    [data-elementor-id="12"],
    [data-elementor-id="8167"]
) > .e-parent {
    display: none !important;
}

.pmh-mission-v2 {
    --mission-max: 1200px;
    background: var(--pmh-ivory-warm);
    color: var(--pmh-charcoal);
    overflow: hidden;
}

.pmh-mission-v2 *,
.pmh-mission-v2 *::before,
.pmh-mission-v2 *::after {
    box-sizing: border-box;
}

.pmh-mission-v2__inner,
.pmh-mission-v2__hero-inner {
    margin-inline: auto;
    max-width: var(--mission-max);
    width: calc(100% - 64px);
}

.pmh-mission-v2__section {
    padding-block: clamp(64px, 7vw, 96px);
}

.pmh-mission-v2 :is(h1, h2, h3, p) {
    margin-top: 0;
}

.pmh-mission-v2 h1 {
    color: var(--pmh-sand-light) !important;
    font-size: clamp(44px, 5.5vw, 76px) !important;
    letter-spacing: -0.035em;
    line-height: 0.98 !important;
    margin-bottom: 28px;
    max-width: 980px;
    text-wrap: balance;
}

/* French headings use sentence case. The theme's global capitalize rule is
   appropriate for English title case but must not alter articles or prepositions. */
body.page-id-12 .pmh-mission-v2 h1 {
    text-transform: none !important;
}

.pmh-mission-v2 h2 {
    color: var(--pmh-brick) !important;
    font-size: clamp(36px, 4vw, 58px) !important;
    letter-spacing: -0.025em;
    line-height: 1.08 !important;
    margin-bottom: 28px;
    text-wrap: balance;
}

.pmh-mission-v2 h3 {
    color: var(--pmh-charcoal) !important;
    font-size: clamp(24px, 2.1vw, 34px) !important;
    line-height: 1.16 !important;
}

.pmh-mission-v2 p,
.pmh-mission-v2 li {
    color: var(--pmh-charcoal) !important;
    font-size: clamp(17px, 1.25vw, 20px);
    line-height: 1.6;
}

.pmh-mission-v2__kicker {
    align-items: center;
    color: var(--pmh-brick) !important;
    display: flex;
    font-size: 14px !important;
    font-weight: 750;
    gap: 14px;
    letter-spacing: 0.18em;
    margin-bottom: 28px;
    text-transform: uppercase;
}

.pmh-mission-v2__kicker::before {
    background: currentColor;
    content: "";
    display: block;
    flex: 0 0 40px;
    height: 3px;
}

.pmh-mission-v2__kicker--light {
    color: var(--pmh-sand-light) !important;
}

.pmh-mission-v2__hero {
    background-color: var(--pmh-olive-deep) !important;
    background-image:
        linear-gradient(90deg, rgba(63, 82, 58, 0.97) 0%, rgba(63, 82, 58, 0.84) 52%, rgba(36, 33, 31, 0.58) 100%),
        url("/wp-content/uploads/2026/08/evacuation-medicale.webp") !important;
    background-position: center, center 44% !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    min-height: 560px;
}

.pmh-mission-v2__hero-inner {
    display: flex;
    flex-direction: column;
    min-height: 560px;
    padding: 158px 0 34px;
    position: relative;
}

.pmh-mission-v2__lead {
    color: var(--pmh-ivory-warm) !important;
    font-size: clamp(20px, 2vw, 28px) !important;
    line-height: 1.5 !important;
    margin-bottom: 16px;
    max-width: 980px;
}

.pmh-mission-v2__hero-copy {
    color: var(--pmh-sand-light) !important;
    font-size: clamp(16px, 1.35vw, 19px) !important;
    margin-bottom: 0;
    max-width: 880px;
}

.pmh-mission-v2__signature {
    align-self: flex-end;
    background: var(--pmh-brick);
    color: var(--pmh-ivory-warm) !important;
    font-size: 14px !important;
    font-weight: 750;
    letter-spacing: 0.12em;
    margin: auto 0 0;
    padding: 18px 28px;
    text-transform: uppercase;
}

.pmh-mission-v2__split-heading {
    display: grid;
    gap: clamp(40px, 7vw, 110px);
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.pmh-mission-v2__copy p + p {
    margin-top: 20px;
}

.pmh-mission-v2__section-summary {
    align-self: center;
    font-size: clamp(19px, 1.55vw, 24px) !important;
    margin-bottom: 0;
}

.pmh-mission-v2__contrast-grid {
    border-block: 2px solid var(--pmh-charcoal);
    display: grid;
    grid-template-columns: 1fr 1fr 0.78fr;
    margin-top: 70px;
}

.pmh-mission-v2__contrast-card {
    min-height: 230px;
    padding: 44px 40px;
}

.pmh-mission-v2__contrast-card h3 {
    font-size: 27px !important;
    margin-bottom: 18px;
}

.pmh-mission-v2__contrast-card p {
    font-size: 17px;
    margin: 0;
}

.pmh-mission-v2__contrast-card--sand {
    background: var(--pmh-sand-light);
}

.pmh-mission-v2__contrast-card--brick {
    background: var(--pmh-brick);
}

.pmh-mission-v2__contrast-card--brick :is(h3, p) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-mission-v2__photo-card {
    background:
        linear-gradient(rgba(63, 82, 58, 0.18), rgba(63, 82, 58, 0.78)),
        url("/wp-content/uploads/2026/08/agir-coordination.webp") center 44% / cover no-repeat;
    margin: 0;
    min-height: 230px;
    position: relative;
}

.pmh-mission-v2__photo-card figcaption {
    bottom: 24px;
    color: var(--pmh-ivory-warm);
    font-size: 13px;
    font-weight: 750;
    left: 24px;
    letter-spacing: 0.11em;
    position: absolute;
    text-transform: uppercase;
}

.pmh-mission-v2__place,
.pmh-mission-v2__programmes {
    background: var(--pmh-sand-light);
}

.pmh-mission-v2__flow {
    align-items: stretch;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) 38px minmax(0, 1fr) 38px minmax(0, 1fr);
    margin-top: 64px;
}

.pmh-mission-v2__flow-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 340px;
    padding: 44px 40px;
}

.pmh-mission-v2__flow-card h3 {
    margin: 40px 0 18px;
}

.pmh-mission-v2__flow-card p:last-child {
    font-size: 16px;
    margin-bottom: 0;
}

.pmh-mission-v2__flow-card--need {
    background: var(--pmh-brick);
}

.pmh-mission-v2__flow-card--need :is(h3, p),
.pmh-mission-v2__flow-card--capacity :is(h3, p) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-mission-v2__flow-card--link {
    background: var(--pmh-ivory-warm);
}

.pmh-mission-v2__flow-card--link h3 {
    color: var(--pmh-brick) !important;
}

.pmh-mission-v2__flow-card--capacity {
    background: var(--pmh-olive-deep);
}

.pmh-mission-v2__arrow {
    align-self: center;
    color: var(--pmh-charcoal);
    font-size: 38px;
    text-align: center;
}

.pmh-mission-v2__number {
    font-size: 13px !important;
    font-weight: 750;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.pmh-mission-v2__role,
.pmh-mission-v2__participate {
    background: var(--pmh-olive-deep);
}

.pmh-mission-v2__role :is(h2, h3),
.pmh-mission-v2__participate h2 {
    color: var(--pmh-sand-light) !important;
}

.pmh-mission-v2__role .pmh-mission-v2__section-summary,
.pmh-mission-v2__participate .pmh-mission-v2__section-summary {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-mission-v2__role-grid {
    border-top: 2px solid var(--pmh-sand-light);
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    list-style: none;
    margin: 64px 0 0;
    padding: 0;
}

.pmh-mission-v2__role-grid li {
    border-right: 1px solid rgba(226, 213, 191, 0.42);
    min-height: 310px;
    padding: 34px 28px;
}

.pmh-mission-v2__role-grid li:last-child {
    border-right: 0;
}

.pmh-mission-v2__role-grid span {
    color: var(--pmh-sand-light);
    display: block;
    font-size: 13px;
    font-weight: 750;
    margin-bottom: 56px;
}

.pmh-mission-v2__role-grid h3 {
    font-size: 24px !important;
    margin-bottom: 18px;
}

.pmh-mission-v2__role-grid p {
    color: var(--pmh-ivory-warm) !important;
    font-size: 15px;
    margin: 0;
}

.pmh-mission-v2__responsibility-grid {
    display: grid;
    gap: clamp(50px, 8vw, 120px);
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
}

.pmh-mission-v2__responsibility-lead {
    font-size: 21px !important;
    margin-top: 52px;
    max-width: 470px;
}

.pmh-mission-v2__limits {
    border-top: 2px solid var(--pmh-charcoal);
    list-style: none;
    margin: 0;
    padding: 0;
}

.pmh-mission-v2__limits li {
    border-bottom: 1px solid rgba(36, 33, 31, 0.3);
    display: grid;
    font-size: 17px;
    gap: 24px;
    grid-template-columns: 42px 1fr;
    padding: 27px 0;
}

.pmh-mission-v2__limits li::before {
    color: var(--pmh-brick);
    content: "—";
    font-weight: 750;
}

.pmh-mission-v2__values {
    background: var(--pmh-brick);
}

.pmh-mission-v2__values h2 {
    color: var(--pmh-sand-light) !important;
}

.pmh-mission-v2__values-lead {
    color: var(--pmh-ivory-warm) !important;
    font-size: 20px !important;
    margin-bottom: 56px;
}

.pmh-mission-v2__values-grid {
    border: 2px solid var(--pmh-sand-light);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.pmh-mission-v2__values-grid span {
    align-items: center;
    background: var(--pmh-ivory-warm);
    color: var(--pmh-charcoal);
    display: flex;
    font-size: 18px;
    font-weight: 750;
    min-height: 132px;
    padding: 28px;
}

.pmh-mission-v2__values-grid span:nth-child(2),
.pmh-mission-v2__values-grid span:nth-child(7) {
    background: var(--pmh-sand-light);
}

.pmh-mission-v2__values-grid span:nth-child(3),
.pmh-mission-v2__values-grid span:nth-child(6) {
    background: var(--pmh-olive-deep);
    color: var(--pmh-ivory-warm);
}

.pmh-mission-v2__values-grid span:nth-child(4),
.pmh-mission-v2__values-grid span:nth-child(5),
.pmh-mission-v2__values-grid span:nth-child(8) {
    background: transparent;
    color: var(--pmh-ivory-warm);
}

.pmh-mission-v2__programme-grid {
    display: grid;
    gap: 24px;
    grid-template-columns: 1fr 1fr;
    margin-top: 64px;
}

.pmh-mission-v2__programme {
    min-height: 390px;
    padding: 52px 44px;
}

.pmh-mission-v2__programme h3 {
    font-size: clamp(34px, 3vw, 48px) !important;
    margin: 62px 0 24px;
}

.pmh-mission-v2__programme p:not(.pmh-mission-v2__number) {
    font-size: 17px;
}

.pmh-mission-v2__programme a,
.pmh-mission-v2__participate-grid a,
.pmh-mission-v2__participate-grid button {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2px solid currentColor !important;
    border-radius: 0 !important;
    color: inherit !important;
    display: inline-flex;
    font-size: 16px;
    font-weight: 750;
    gap: 8px;
    margin-top: 24px;
    padding: 0 0 7px !important;
    text-align: left;
    text-decoration: none;
    width: auto;
}

.pmh-mission-v2__programme a:is(:hover, :focus-visible),
.pmh-mission-v2__participate-grid :is(a, button):is(:hover, :focus-visible) {
    color: var(--pmh-brick) !important;
}

.pmh-mission-v2__programme--care {
    background: var(--pmh-brick);
    color: var(--pmh-ivory-warm);
}

.pmh-mission-v2__programme--care :is(h3, p, a) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-mission-v2__programme--care h3 {
    color: var(--pmh-sand-light) !important;
}

.pmh-mission-v2__programme--future {
    background: var(--pmh-ivory-warm);
    border-top: 8px solid var(--pmh-olive-deep);
}

.pmh-mission-v2__programme--future h3 {
    color: var(--pmh-brick) !important;
}

.pmh-mission-v2__participate-grid {
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 62px;
}

.pmh-mission-v2__participate-grid article {
    background: var(--pmh-sand-light);
    min-height: 320px;
    padding: 44px 40px;
}

.pmh-mission-v2__participate-grid article > span {
    color: var(--pmh-brick);
    display: block;
    font-size: 13px;
    font-weight: 750;
    margin-bottom: 54px;
}

.pmh-mission-v2__participate-grid h3 {
    color: var(--pmh-brick) !important;
    font-size: 27px !important;
    margin-bottom: 18px;
}

.pmh-mission-v2__participate-grid p {
    font-size: 16px;
}

.pmh-mission-v2__participate-grid button {
    cursor: pointer;
    font-family: inherit;
}

.pmh-mission-v2__participate-grid :is(a, button) {
    color: var(--pmh-charcoal) !important;
}

@media (max-width: 1024px) {
    .pmh-mission-v2__hero,
    .pmh-mission-v2__hero-inner {
        min-height: 520px;
    }

    .pmh-mission-v2__hero-inner {
        padding-top: 130px;
    }

    .pmh-mission-v2__contrast-grid {
        grid-template-columns: 1fr 1fr;
    }

    .pmh-mission-v2__photo-card {
        grid-column: 1 / -1;
    }

    .pmh-mission-v2__flow {
        grid-template-columns: 1fr;
    }

    .pmh-mission-v2__arrow {
        line-height: 1;
        transform: rotate(90deg);
    }

    .pmh-mission-v2__role-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pmh-mission-v2__role-grid li:nth-child(2n) {
        border-right: 0;
    }

    .pmh-mission-v2__values-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .pmh-mission-v2__inner,
    .pmh-mission-v2__hero-inner {
        width: calc(100% - 40px);
    }

    .pmh-mission-v2__section {
        padding-block: 56px;
    }

    .pmh-mission-v2__hero,
    .pmh-mission-v2__hero-inner {
        min-height: 580px;
    }

    .pmh-mission-v2__hero-inner {
        padding-top: 146px;
    }

    .pmh-mission-v2 h1 {
        font-size: clamp(40px, 12vw, 54px) !important;
    }

    .pmh-mission-v2 h2 {
        font-size: clamp(32px, 9vw, 42px) !important;
    }

    .pmh-mission-v2__signature {
        align-self: stretch;
        font-size: 12px !important;
        padding: 16px 18px;
        text-align: center;
    }

    .pmh-mission-v2__split-heading,
    .pmh-mission-v2__responsibility-grid,
    .pmh-mission-v2__programme-grid,
    .pmh-mission-v2__participate-grid,
    .pmh-mission-v2__contrast-grid {
        grid-template-columns: 1fr;
    }

    .pmh-mission-v2__contrast-grid,
    .pmh-mission-v2__flow,
    .pmh-mission-v2__programme-grid,
    .pmh-mission-v2__participate-grid {
        margin-top: 44px;
    }

    .pmh-mission-v2__role-grid {
        grid-template-columns: 1fr;
    }

    .pmh-mission-v2__role-grid li {
        border-bottom: 1px solid rgba(226, 213, 191, 0.42);
        border-right: 0;
        min-height: 0;
    }

    .pmh-mission-v2__role-grid span {
        margin-bottom: 30px;
    }

    .pmh-mission-v2__values-grid {
        grid-template-columns: 1fr;
    }

    .pmh-mission-v2__values-grid span {
        min-height: 92px;
    }

    .pmh-mission-v2__programme,
    .pmh-mission-v2__participate-grid article {
        min-height: 0;
        padding: 38px 28px;
    }
}

/* The global Elementor button system is deliberately stronger than ordinary
   component rules. Lock the Mission closing links to their editorial underline
   treatment so they can never revert to sand-on-sand or brick-on-brick. */
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate .pmh-mission-v2__participate-grid article
    > :is(a, button.pdm-newsletter-toggle) {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2px solid var(--pmh-charcoal) !important;
    color: var(--pmh-charcoal) !important;
}

html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate .pmh-mission-v2__participate-grid article
    > :is(a, button.pdm-newsletter-toggle):is(:hover, :focus-visible) {
    border-bottom-color: var(--pmh-brick) !important;
    color: var(--pmh-brick) !important;
}

/* Elementor's generated page stylesheet carries three class-level selectors
   on this pseudo-element. Match that weight so the obsolete navy overlay is
   consistently replaced by the olive art direction. */
html body:is(.page-id-6304, .page-id-8500)
    .elementor.elementor-6304 .elementor-element.elementor-element-753291f::before,
html body.page-id-8500
    .elementor[data-elementor-id="8500"] .elementor-element.elementor-element-753291f::before {
    background-image: linear-gradient(
        90deg,
        rgba(63, 82, 58, 0.96) 0%,
        rgba(63, 82, 58, 0.88) 58%,
        rgba(63, 82, 58, 0.72) 100%
    ) !important;
}

/* Closing Mission cards share one editorial baseline: equal title space,
   flexible copy area and actions anchored to the bottom edge. */
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate-grid article {
    display: flex;
    flex-direction: column;
}

html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate-grid h3 {
    min-height: 2.35em;
}

html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate-grid article > p {
    color: var(--pmh-charcoal) !important;
    margin-bottom: 28px;
}

html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate-grid article
    > :is(a, button.pdm-newsletter-toggle) {
    margin-top: auto !important;
}

@media (max-width: 767px) {
    html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
        .pmh-mission-v2__participate-grid h3 {
        min-height: 0;
    }

    html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
        .pmh-mission-v2__participate-grid article
        > :is(a, button.pdm-newsletter-toggle) {
        margin-top: 24px !important;
    }
}

/* Mission dark surfaces need explicit contrast rules. The site-wide palette
   layer has deliberately strong selectors, so these closing rules preserve
   the approved sand/ivory hierarchy even when Elementor regenerates CSS. */
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__hero :is(h1, .pmh-mission-v2__kicker, .pmh-mission-v2__hero-copy),
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__role :is(h2, h3, .pmh-mission-v2__kicker, .pmh-mission-v2__role-grid span),
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__values :is(h2, .pmh-mission-v2__kicker),
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate :is(h2, .pmh-mission-v2__kicker) {
    color: var(--pmh-sand-light) !important;
}

html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__hero .pmh-mission-v2__lead,
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__role :is(.pmh-mission-v2__section-summary, .pmh-mission-v2__role-grid p),
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__values .pmh-mission-v2__values-lead,
html body:is(.page-id-12, .page-id-8167) .pmh-mission-v2
    .pmh-mission-v2__participate .pmh-mission-v2__section-summary {
    color: var(--pmh-ivory-warm) !important;
}

/* ========================================================================== */
/* 2.3.5.9 — shared institutional-editorial system for the remaining pages.   */
/* ========================================================================== */

body:is(.page-id-7794, .page-id-8187) :is(
    .pmh-work-v2__legacy,
    .pmh-work-v2__legacy ~ .elementor-element
),
body:is(.page-id-5668, .page-id-8173) :is(
    .pmh-how-v2__legacy,
    .pmh-how-v2__legacy ~ .elementor-element
) {
    display: none !important;
}

.pmh-editorial-v2 {
    --pmh-editorial-max: 1180px;
    background: var(--pmh-ivory-warm);
    color: var(--pmh-charcoal);
    overflow: clip;
}

.pmh-editorial-v2,
.pmh-editorial-v2 *,
.pmh-editorial-v2 *::before,
.pmh-editorial-v2 *::after {
    box-sizing: border-box;
}

.pmh-editorial-v2 :is(h1, h2, h3, p, ol, ul, figure) {
    margin-top: 0;
}

.pmh-editorial-v2__inner {
    margin-inline: auto;
    max-width: var(--pmh-editorial-max);
    padding-inline: 30px;
    width: 100%;
}

.pmh-editorial-v2__hero {
    align-items: flex-start;
    background-color: var(--pmh-olive-deep);
    background-position: center;
    background-size: cover;
    color: var(--pmh-ivory-warm);
    display: flex;
    min-height: 430px;
    height: 430px;
    min-height: 430px;
    padding-block: 145px 25px;
    position: relative;
}

html body .pmh-programme-v2 .pmh-editorial-v2__hero h1 {
    font-size: clamp(2.45rem, 4.4vw, 3.8rem);
}

.pmh-editorial-v2__hero::before {
    background: linear-gradient(90deg, rgba(63, 82, 58, 0.98), rgba(63, 82, 58, 0.82) 62%, rgba(63, 82, 58, 0.42));
    content: "";
    inset: 0;
    position: absolute;
}

.pmh-editorial-v2__hero .pmh-editorial-v2__inner {
    position: relative;
    z-index: 1;
}

.pmh-editorial-v2__hero .pmh-editorial-v2__kicker {
    margin-bottom: 18px;
}

html body .pmh-editorial-v2__hero h1 {
    margin-bottom: 18px;
}

.pmh-work-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/hero-pont-de-mer-humanitaire.webp");
}

.pmh-how-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/acces.webp");
}

html body .pmh-editorial-v2 h1,
html body .pmh-editorial-v2 h2,
html body .pmh-editorial-v2 h3 {
    font-family: Poppins, sans-serif;
    font-style: normal;
    letter-spacing: -0.035em;
    text-transform: none;
}

html body .pmh-editorial-v2 h1 {
    color: var(--pmh-sand-light) !important;
    font-size: clamp(2.55rem, 5vw, 4.85rem);
    font-weight: 700;
    line-height: 1.02;
    margin-bottom: 26px;
    max-width: 980px;
}

html body .pmh-editorial-v2 h2 {
    color: var(--pmh-brick) !important;
    font-size: clamp(2rem, 3.4vw, 3.55rem);
    font-weight: 700;
    line-height: 1.08;
    margin-bottom: 22px;
}

html body .pmh-editorial-v2 h3 {
    color: var(--pmh-charcoal) !important;
    font-size: clamp(1.4rem, 2.1vw, 2.05rem);
    font-weight: 700;
    line-height: 1.16;
    margin-bottom: 18px;
}

.pmh-editorial-v2 p,
.pmh-editorial-v2 li {
    color: inherit;
    font-family: "Open Sans", sans-serif;
    font-size: clamp(1rem, 1.15vw, 1.1rem);
    line-height: 1.72;
}

.pmh-editorial-v2 :is(a, button) {
    font-family: "Open Sans", sans-serif;
}

.pmh-editorial-v2__lead {
    color: var(--pmh-ivory-warm) !important;
    font-size: clamp(1.1rem, 1.7vw, 1.38rem) !important;
    line-height: 1.55 !important;
    margin-bottom: 0;
    max-width: 790px;
}

.pmh-editorial-v2__kicker {
    align-items: center;
    color: var(--pmh-brick) !important;
    display: flex;
    font-size: 0.82rem !important;
    font-weight: 800;
    gap: 16px;
    letter-spacing: 0.19em;
    line-height: 1.2 !important;
    margin-bottom: 26px;
    text-transform: uppercase;
}

.pmh-editorial-v2__kicker::before {
    background: currentColor;
    content: "";
    flex: 0 0 42px;
    height: 3px;
}

.pmh-editorial-v2__kicker--light {
    color: var(--pmh-sand-light) !important;
}

.pmh-editorial-v2__section {
    background: var(--pmh-ivory-warm);
    padding-block: clamp(74px, 8vw, 112px);
}

.pmh-editorial-v2__section--sand {
    background: var(--pmh-sand-light);
}

.pmh-editorial-v2__section--olive,
.pmh-editorial-v2__cta {
    background: var(--pmh-olive-deep);
    color: var(--pmh-ivory-warm);
}

.pmh-editorial-v2__section--olive :is(h2, h3),
.pmh-editorial-v2__cta :is(h2, h3) {
    color: var(--pmh-sand-light) !important;
}

.pmh-editorial-v2__section--olive :is(p, li),
.pmh-editorial-v2__cta :is(p, li) {
    color: var(--pmh-ivory-warm) !important;
}

.pmh-editorial-v2__split {
    align-items: start;
    display: grid;
    gap: clamp(42px, 7vw, 92px);
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
}

.pmh-editorial-v2__copy p,
.pmh-editorial-v2__summary {
    margin-bottom: 20px;
}

.pmh-editorial-v2__copy p:last-child,
.pmh-editorial-v2__summary:last-child {
    margin-bottom: 0;
}

.pmh-editorial-v2__summary {
    font-size: clamp(1.05rem, 1.35vw, 1.23rem) !important;
    line-height: 1.65 !important;
}

.pmh-editorial-v2__image-strip {
    border-top: 8px solid var(--pmh-brick);
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(210px, 0.3fr);
    margin: 62px 0 0;
    max-height: 390px;
    overflow: hidden;
}

.pmh-editorial-v2__image-strip img {
    height: 100%;
    min-height: 330px;
    object-fit: cover;
    width: 100%;
}

.pmh-editorial-v2__image-strip figcaption {
    align-items: flex-end;
    background: var(--pmh-olive-deep);
    color: var(--pmh-sand-light);
    display: flex;
    font-size: 0.9rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    padding: 34px 30px;
    text-transform: uppercase;
}

.pmh-editorial-v2__programme-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 56px;
}

.pmh-editorial-v2__programme {
    display: flex;
    flex-direction: column;
    min-height: 480px;
    padding: clamp(34px, 4vw, 54px);
}

.pmh-editorial-v2__programme--care {
    background: var(--pmh-ivory-warm);
    border-top: 8px solid var(--pmh-brick);
}

.pmh-editorial-v2__programme--future {
    background: var(--pmh-olive-deep);
    border-top: 8px solid var(--pmh-charcoal);
    color: var(--pmh-ivory-warm);
}

html body .pmh-editorial-v2__programme--future :is(h3, p, li, a) {
    color: var(--pmh-ivory-warm) !important;
}

html body .pmh-editorial-v2__programme--future h3 {
    color: var(--pmh-sand-light) !important;
}

.pmh-editorial-v2__number,
.pmh-editorial-v2__sequence-grid article > span,
.pmh-editorial-v2__statement-grid article > span {
    color: var(--pmh-brick) !important;
    font-size: 0.83rem !important;
    font-weight: 800;
    letter-spacing: 0.14em;
    margin-bottom: 36px;
    text-transform: uppercase;
}

.pmh-editorial-v2__programme--future .pmh-editorial-v2__number {
    color: var(--pmh-sand-light) !important;
}

.pmh-editorial-v2__programme ul {
    display: grid;
    gap: 7px;
    list-style: none;
    margin: 18px 0 30px;
    padding: 0;
}

.pmh-editorial-v2__programme li {
    border-bottom: 1px solid currentColor;
    font-size: 0.9rem;
    padding-bottom: 7px;
}

.pmh-editorial-v2__programme > a {
    align-self: flex-start;
    border-bottom: 2px solid currentColor;
    color: var(--pmh-charcoal) !important;
    font-weight: 800;
    margin-top: auto;
    padding-bottom: 7px;
    text-decoration: none;
}

.pmh-editorial-v2__programme > a:is(:hover, :focus-visible) {
    color: var(--pmh-brick) !important;
}

.pmh-editorial-v2__programme--future > a:is(:hover, :focus-visible) {
    color: var(--pmh-sand-light) !important;
}

.pmh-editorial-v2__steps {
    border-top: 2px solid var(--pmh-sand-light);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    list-style: none;
    margin: 54px 0 38px;
    padding: 0;
}

.pmh-editorial-v2__steps li {
    border-right: 1px solid rgba(226, 213, 191, 0.5);
    min-height: 250px;
    padding: 32px 28px 20px;
}

.pmh-editorial-v2__steps li:first-child {
    padding-left: 0;
}

.pmh-editorial-v2__steps li:last-child {
    border-right: 0;
    padding-right: 0;
}

.pmh-editorial-v2__steps span {
    color: var(--pmh-sand-light);
    display: block;
    font-size: 0.82rem;
    font-weight: 800;
    margin-bottom: 54px;
}

html body .pmh-editorial-v2__steps h3 {
    color: var(--pmh-sand-light) !important;
    font-size: 1.58rem;
}

.pmh-editorial-v2__steps p {
    font-size: 0.97rem;
    line-height: 1.6;
}

.pmh-editorial-v2__statement-grid {
    border-top: 2px solid var(--pmh-charcoal);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pmh-editorial-v2__statement-grid article {
    min-height: 220px;
    padding: 34px 30px;
}

.pmh-editorial-v2__statement-grid article:first-child {
    background: var(--pmh-sand-light);
}

.pmh-editorial-v2__statement-grid article:last-child {
    background: var(--pmh-ivory-warm);
    border-left: 1px solid var(--pmh-charcoal);
}

.pmh-editorial-v2__statement-grid article > span {
    display: block;
    margin-bottom: 24px;
}

.pmh-editorial-v2__sequence-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 54px;
}

.pmh-editorial-v2__sequence-grid article {
    background: var(--pmh-ivory-warm);
    border-top: 7px solid var(--pmh-brick);
    min-height: 320px;
    padding: 36px 30px;
}

.pmh-editorial-v2__sequence-grid article:nth-child(2) {
    border-top-color: var(--pmh-olive-deep);
}

.pmh-editorial-v2__sequence-grid article:nth-child(3) {
    border-top-color: var(--pmh-charcoal);
}

.pmh-editorial-v2__cta {
    padding-block: clamp(64px, 7vw, 92px);
}

.pmh-editorial-v2__cta p {
    margin-bottom: 28px;
}

.pmh-editorial-v2__button {
    background: var(--pmh-brick) !important;
    border: 2px solid var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
    display: inline-block;
    font-weight: 800;
    padding: 15px 23px;
    text-decoration: none;
    transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}

.pmh-editorial-v2__button:is(:hover, :focus-visible) {
    background: var(--pmh-ivory-warm) !important;
    border-color: var(--pmh-ivory-warm) !important;
    color: var(--pmh-charcoal) !important;
}

.pmh-editorial-v2__button--light {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

.pmh-editorial-v2__button--light:is(:hover, :focus-visible) {
    background: transparent !important;
    color: var(--pmh-sand-light) !important;
}

/* The floating newsletter remains available without covering the primary
   reading column on compact screens. */
@media (max-width: 767px) {
    body:is(.page-id-7794, .page-id-8187, .page-id-5668, .page-id-8173)
        .pdm-newsletter-float {
        bottom: 10px !important;
        max-width: calc(100vw - 20px) !important;
        right: 10px !important;
    }
}

@media (max-width: 1024px) {
    .pmh-editorial-v2__split {
        gap: 42px;
        grid-template-columns: 1fr;
    }

    .pmh-editorial-v2__steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pmh-editorial-v2__steps li:nth-child(2) {
        border-right: 0;
    }

    .pmh-editorial-v2__sequence-grid {
        grid-template-columns: 1fr;
    }

    .pmh-editorial-v2__sequence-grid article {
        min-height: 0;
    }
}

@media (max-width: 767px) {
    .pmh-editorial-v2__inner {
        padding-inline: 20px;
    }

    .pmh-editorial-v2__hero {
        height: 430px;
        min-height: 430px;
        padding-block: 110px 20px;
    }

    html body .pmh-editorial-v2 h1 {
        font-size: clamp(2rem, 10vw, 2.45rem);
        margin-bottom: 15px;
    }

    .pmh-editorial-v2__lead {
        font-size: 0.98rem !important;
        line-height: 1.48 !important;
    }

    .pmh-editorial-v2__hero .pmh-editorial-v2__kicker {
        margin-bottom: 15px;
    }

    html body .pmh-editorial-v2 h2 {
        font-size: clamp(1.9rem, 9vw, 2.7rem);
    }

    .pmh-editorial-v2__section {
        padding-block: 64px;
    }

    .pmh-editorial-v2__image-strip,
    .pmh-editorial-v2__programme-grid,
    .pmh-editorial-v2__statement-grid,
    .pmh-editorial-v2__steps {
        grid-template-columns: 1fr;
    }

    .pmh-editorial-v2__image-strip {
        max-height: none;
    }

    .pmh-editorial-v2__image-strip img {
        min-height: 250px;
    }

    .pmh-editorial-v2__image-strip figcaption {
        min-height: 110px;
    }

    .pmh-editorial-v2__programme {
        min-height: 0;
    }

    .pmh-editorial-v2__steps li,
    .pmh-editorial-v2__steps li:first-child,
    .pmh-editorial-v2__steps li:last-child {
        border-bottom: 1px solid rgba(226, 213, 191, 0.5);
        border-right: 0;
        min-height: 0;
        padding: 28px 0;
    }

    .pmh-editorial-v2__steps li:last-child {
        border-bottom: 0;
    }

    .pmh-editorial-v2__steps span {
        margin-bottom: 22px;
    }

    .pmh-editorial-v2__statement-grid article:last-child {
        border-left: 0;
        border-top: 1px solid var(--pmh-charcoal);
    }
}

/* ========================================================================== */
/* 2.3.5.10 — programme and impact pages: editorial plates + real photography. */
/* ========================================================================== */

body:is(
    .page-id-7788, .page-id-8169,
    .page-id-5923, .page-id-8400,
    .page-id-7792, .page-id-8171,
    .page-id-5850, .page-id-8209
) :is(
    .pmh-access-v2__legacy, .pmh-access-v2__legacy ~ .elementor-element,
    .pmh-gaza-v2__legacy, .pmh-gaza-v2__legacy ~ .elementor-element,
    .pmh-future-v2__legacy, .pmh-future-v2__legacy ~ .elementor-element,
    .pmh-impact-v2__legacy, .pmh-impact-v2__legacy ~ .elementor-element
) {
    display: none !important;
}

.pmh-access-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/pont-de-mer-coordination-soutien-2048x1365.webp");
    background-position: center 42%;
}

.pmh-gaza-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/gaza-egypt-medicalcare-1536x1536.webp");
    background-position: center 38%;
}

.pmh-future-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/enfant-camp-deplaces.webp");
    background-position: center 45%;
}

.pmh-impact-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/appui.webp");
    background-position: center 44%;
}

.pmh-editorial-v2__media {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(230px, 0.35fr);
    margin: 62px 0 0;
    min-height: 360px;
    overflow: hidden;
}

.pmh-editorial-v2__media img {
    height: 100%;
    max-height: 430px;
    object-fit: cover;
    width: 100%;
}

.pmh-editorial-v2__media figcaption {
    align-items: flex-end;
    background: var(--pmh-olive-deep);
    border-top: 8px solid var(--pmh-brick);
    color: var(--pmh-sand-light);
    display: flex;
    font-family: "Open Sans", sans-serif;
    font-size: 0.86rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    padding: 34px 28px;
    text-transform: uppercase;
}

.pmh-editorial-v2__media--portrait img {
    object-position: center 46%;
}

.pmh-editorial-v2__photo-pair {
    display: grid;
    gap: 18px;
    /*
     * The source photographs use different native formats: the first is
     * square, the second is 3:4 portrait. A 4:3 column ratio lets both images
     * keep their full composition while landing at virtually the same height.
     */
    grid-template-columns: minmax(0, 4fr) minmax(0, 3fr);
    margin-top: 62px;
}

.pmh-editorial-v2__photo-pair figure {
    background: var(--pmh-sand-light);
    margin: 0;
    position: relative;
}

.pmh-editorial-v2__photo-pair img {
    display: block;
    height: auto;
    object-fit: contain;
    width: 100%;
}

.pmh-editorial-v2__photo-pair figcaption {
    background: var(--pmh-olive-deep);
    bottom: 0;
    color: var(--pmh-sand-light);
    font-family: "Open Sans", sans-serif;
    font-size: 0.82rem;
    font-weight: 800;
    left: 0;
    letter-spacing: 0.13em;
    padding: 16px 20px;
    position: absolute;
    text-transform: uppercase;
}

.pmh-editorial-v2__tile-grid,
.pmh-editorial-v2__value-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    list-style: none;
    margin: 54px 0 0;
    padding: 0;
}

.pmh-editorial-v2__tile-grid li,
.pmh-editorial-v2__value-grid article {
    background: var(--pmh-ivory-warm);
    border-top: 7px solid var(--pmh-brick);
    min-height: 290px;
    padding: 34px 28px;
}

.pmh-editorial-v2__tile-grid li:nth-child(2),
.pmh-editorial-v2__value-grid article:nth-child(2) {
    background: var(--pmh-olive-deep);
    border-top-color: var(--pmh-charcoal);
    color: var(--pmh-ivory-warm);
}

.pmh-editorial-v2__tile-grid li:nth-child(3),
.pmh-editorial-v2__value-grid article:nth-child(3) {
    border-top-color: var(--pmh-olive-deep);
}

.pmh-editorial-v2__tile-grid li:nth-child(4),
.pmh-editorial-v2__value-grid article:nth-child(4) {
    background: var(--pmh-charcoal);
    border-top-color: var(--pmh-sand-light);
    color: var(--pmh-ivory-warm);
}

.pmh-editorial-v2__tile-grid--five {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.pmh-editorial-v2__tile-grid--five li {
    min-height: 315px;
    padding-inline: 24px;
}

.pmh-editorial-v2__tile-grid--five li:nth-child(5) {
    border-top-color: var(--pmh-brick);
}

.pmh-editorial-v2__tile-grid :is(span),
.pmh-editorial-v2__value-grid :is(span) {
    color: var(--pmh-brick);
    display: block;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    margin-bottom: 44px;
}

html body .pmh-editorial-v2__tile-grid li:nth-child(2) :is(h3, p, span),
html body .pmh-editorial-v2__value-grid article:nth-child(2) :is(h3, p, span),
html body .pmh-editorial-v2__tile-grid li:nth-child(4) :is(h3, p, span),
html body .pmh-editorial-v2__value-grid article:nth-child(4) :is(h3, p, span) {
    color: var(--pmh-ivory-warm) !important;
}

html body .pmh-editorial-v2__tile-grid li:nth-child(2) h3,
html body .pmh-editorial-v2__value-grid article:nth-child(2) h3,
html body .pmh-editorial-v2__tile-grid li:nth-child(4) h3,
html body .pmh-editorial-v2__value-grid article:nth-child(4) h3 {
    color: var(--pmh-sand-light) !important;
}

.pmh-editorial-v2__tile-grid p,
.pmh-editorial-v2__value-grid p {
    font-size: 0.96rem;
    line-height: 1.58;
}

.pmh-editorial-v2__rules {
    border-top: 2px solid var(--pmh-sand-light);
}

.pmh-editorial-v2__rules p {
    border-bottom: 1px solid rgba(226, 213, 191, 0.45);
    margin: 0;
    padding: 22px 0;
}

.pmh-editorial-v2__rules strong {
    color: var(--pmh-sand-light);
}

.pmh-impact-v2__stats {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 54px;
}

.pmh-impact-v2__stats article {
    background: var(--pmh-ivory-warm);
    border-top: 6px solid var(--pmh-brick);
    display: flex;
    flex-direction: column;
    min-height: 260px;
    padding: 32px 26px;
}

.pmh-impact-v2__stats strong {
    color: var(--pmh-brick);
    font-family: Poppins, sans-serif;
    font-size: clamp(3.5rem, 6vw, 5.8rem);
    line-height: 1;
    margin-bottom: 28px;
}

.pmh-impact-v2__stats span {
    font-family: "Open Sans", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.45;
}

.pmh-impact-v2__stats small {
    border-top: 1px solid rgba(226, 213, 191, 0.5);
    font-family: "Open Sans", sans-serif;
    margin-top: auto;
    padding-top: 18px;
}

.pmh-impact-v2__stats .pmh-impact-v2__stats-feature {
    background: var(--pmh-olive-deep);
    border-top-color: var(--pmh-charcoal);
    color: var(--pmh-ivory-warm);
}

.pmh-impact-v2__stats .pmh-impact-v2__stats-feature strong {
    color: var(--pmh-sand-light);
}

.pmh-impact-v2__cases {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 54px;
}

.pmh-impact-v2__cases article {
    background: var(--pmh-sand-light);
    display: flex;
    flex-direction: column;
}

.pmh-impact-v2__cases img {
    display: block;
    height: 245px;
    object-fit: cover;
    width: 100%;
}

.pmh-impact-v2__cases article > div {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 30px 28px;
}

.pmh-impact-v2__cases span {
    color: var(--pmh-brick);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    margin-bottom: 24px;
    text-transform: uppercase;
}

.pmh-impact-v2__cases p {
    font-size: 0.96rem;
}

.pmh-impact-v2__cases a {
    align-self: flex-start;
    border-bottom: 2px solid var(--pmh-charcoal);
    color: var(--pmh-charcoal) !important;
    font-weight: 800;
    margin-top: auto;
    padding-bottom: 6px;
    text-decoration: none;
}

.pmh-impact-v2__cases a:is(:hover, :focus-visible) {
    border-color: var(--pmh-brick);
    color: var(--pmh-brick) !important;
}

@media (max-width: 1100px) {
    .pmh-editorial-v2__tile-grid--five {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .pmh-editorial-v2__tile-grid,
    .pmh-editorial-v2__value-grid,
    .pmh-impact-v2__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pmh-impact-v2__cases {
        grid-template-columns: 1fr;
    }

    .pmh-impact-v2__cases article {
        display: grid;
        grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.2fr);
    }

    .pmh-impact-v2__cases img {
        height: 100%;
        min-height: 320px;
    }
}

@media (max-width: 767px) {
    body:is(
        .page-id-7788, .page-id-8169,
        .page-id-5923, .page-id-8400,
        .page-id-7792, .page-id-8171,
        .page-id-5850, .page-id-8209
    ) .pdm-newsletter-float {
        bottom: 10px !important;
        max-width: calc(100vw - 20px) !important;
        right: 10px !important;
    }

    .pmh-editorial-v2__media,
    .pmh-editorial-v2__photo-pair,
    .pmh-editorial-v2__tile-grid,
    .pmh-editorial-v2__tile-grid--five,
    .pmh-editorial-v2__value-grid,
    .pmh-impact-v2__stats,
    .pmh-impact-v2__cases article {
        grid-template-columns: 1fr;
    }

    .pmh-editorial-v2__media {
        min-height: 0;
    }

    .pmh-editorial-v2__media img,
    .pmh-editorial-v2__photo-pair img {
        height: 280px;
    }

    .pmh-editorial-v2__photo-pair img {
        height: auto;
    }

    .pmh-editorial-v2__media figcaption {
        min-height: 100px;
    }

    .pmh-editorial-v2__tile-grid li,
    .pmh-editorial-v2__tile-grid--five li,
    .pmh-editorial-v2__value-grid article,
    .pmh-impact-v2__stats article {
        min-height: 0;
    }

    .pmh-impact-v2__cases img {
        height: 260px;
        min-height: 0;
    }
}

/* ========================================================================== */
/* 2.3.5.13 — institutional story, governance and protected functional pages. */
/* ========================================================================== */

body:is(.page-id-7083, .page-id-8212, .page-id-7017, .page-id-8215) :is(
    .pmh-story-v2__legacy, .pmh-story-v2__legacy ~ .elementor-element,
    .pmh-governance-v2__legacy, .pmh-governance-v2__legacy ~ .elementor-element
) {
    display: none !important;
}

.pmh-story-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/mobilisation-citoyenne-atelier.webp");
    background-position: center 48%;
}

.pmh-governance-v2__hero {
    background-image: url("https://elementor-refonte.pontdemerhumanitaire.org/wp-content/uploads/2026/08/reunion-coordination-oms.webp");
    background-position: center 47%;
}

html body :is(.pmh-gaza-v2, .pmh-future-v2, .pmh-story-v2, .pmh-governance-v2)
    .pmh-editorial-v2__hero h1 {
    font-size: clamp(2.35rem, 3.9vw, 3.2rem);
    line-height: 1.01;
    margin-bottom: 12px;
}

html body :is(.pmh-gaza-v2, .pmh-future-v2, .pmh-story-v2, .pmh-governance-v2)
    .pmh-editorial-v2__hero .pmh-editorial-v2__lead {
    font-size: clamp(1rem, 1.3vw, 1.1rem) !important;
    line-height: 1.45 !important;
}

.pmh-story-v2__timeline,
.pmh-governance-v2__bodies {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 54px;
}

.pmh-story-v2__timeline article,
.pmh-governance-v2__bodies article {
    background: var(--pmh-ivory-warm);
    border-top: 7px solid var(--pmh-brick);
    min-height: 330px;
    padding: 38px 32px;
}

.pmh-story-v2__timeline article:nth-child(2),
.pmh-governance-v2__bodies article:nth-child(2) {
    border-top-color: var(--pmh-olive-deep);
}

.pmh-story-v2__timeline article:nth-child(3),
.pmh-governance-v2__bodies article:nth-child(3) {
    background: var(--pmh-olive-deep);
    border-top-color: var(--pmh-charcoal);
    color: var(--pmh-ivory-warm);
}

.pmh-story-v2__timeline span,
.pmh-governance-v2__bodies span {
    color: var(--pmh-brick);
    display: block;
    font-family: "Open Sans", sans-serif;
    font-size: 0.79rem;
    font-weight: 800;
    letter-spacing: 0.13em;
    margin-bottom: 46px;
    text-transform: uppercase;
}

html body .pmh-story-v2__timeline article:nth-child(3) :is(h3, p, span),
html body .pmh-governance-v2__bodies article:nth-child(3) :is(h3, p, span) {
    color: var(--pmh-ivory-warm) !important;
}

html body .pmh-story-v2__timeline article:nth-child(3) h3,
html body .pmh-governance-v2__bodies article:nth-child(3) h3 {
    color: var(--pmh-sand-light) !important;
}

.pmh-story-v2__gallery {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 54px;
}

.pmh-story-v2__gallery img {
    display: block;
    height: 330px;
    object-fit: cover;
    width: 100%;
}

.pmh-story-v2__gallery img:nth-child(even) {
    transform: translateY(28px);
}

.pmh-governance-v2__facts {
    border-top: 2px solid var(--pmh-charcoal);
}

.pmh-governance-v2__facts p {
    align-items: baseline;
    border-bottom: 1px solid rgba(36, 33, 31, 0.3);
    display: flex;
    gap: 24px;
    justify-content: space-between;
    margin: 0;
    padding: 19px 0;
}

.pmh-governance-v2__facts span {
    color: var(--pmh-brick);
    font-weight: 800;
}

.pmh-governance-v2__facts strong {
    color: var(--pmh-charcoal);
    text-align: right;
}

/* Contact keeps its working Elementor form while adopting the same visual
   hierarchy and the 430px hero used elsewhere. */
body:is(.page-id-10, .page-id-8223) .elementor-element-d2964411 {
    height: 430px !important;
    min-height: 430px !important;
}

body:is(.page-id-10, .page-id-8223) .elementor-element-e89a417d {
    background: var(--pmh-sand-light) !important;
}

body:is(.page-id-10, .page-id-8223) .elementor-element-3477b36e {
    background: var(--pmh-ivory-warm) !important;
    border: 0 !important;
    border-top: 7px solid var(--pmh-brick) !important;
    box-shadow: 0 20px 44px rgba(36, 33, 31, 0.1) !important;
}

body:is(.page-id-10, .page-id-8223) :is(input, select, textarea) {
    background: var(--pmh-ivory-warm) !important;
    border: 1px solid rgba(36, 33, 31, 0.55) !important;
    border-radius: 0 !important;
    color: var(--pmh-charcoal) !important;
}

body:is(.page-id-10, .page-id-8223) .elementor-element-ba0797fe {
    background: var(--pmh-olive-deep) !important;
}

body:is(.page-id-10, .page-id-8223) .elementor-element-ba0797fe :is(h2, h3) {
    color: var(--pmh-sand-light) !important;
}

body:is(.page-id-10, .page-id-8223) .elementor-element-ba0797fe :is(p, a, li) {
    color: var(--pmh-ivory-warm) !important;
}

/* Donation and membership keep their forms and payment actions intact. The
   rules below only sharpen the visual rhythm and interactive contrast. */
body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:first-of-type {
    height: 430px !important;
    min-height: 430px !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:nth-of-type(2) {
    background: var(--pmh-sand-light) !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:nth-of-type(2) > article,
body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:nth-of-type(2) > div {
    border-radius: 0 !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:nth-of-type(2) > article:nth-of-type(1) {
    border-top: 6px solid var(--pmh-brick) !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:nth-of-type(2) > article:nth-of-type(2) {
    border-top: 6px solid var(--pmh-olive-deep) !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) .pmh-page > section:nth-of-type(2) > article:nth-of-type(3) {
    border-top: 6px solid var(--pmh-charcoal) !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) :is(
    .pmh-donation__submit,
    .pmh-membership__submit,
    .pmh-pay-panel button
) {
    background: var(--pmh-brick) !important;
    border: 2px solid var(--pmh-brick) !important;
    border-radius: 0 !important;
    color: var(--pmh-ivory-warm) !important;
}

/* WordPress stores French article titles in sentence case. Prevent the theme
   from re-capitalising every word at render time. */
html body.single-post :is(h1, .entry-title, .elementor-heading-title) {
    text-transform: none !important;
}

html body .pmh-editorial-v2 a.pmh-editorial-v2__button {
    color: var(--pmh-ivory-warm) !important;
}

html body .pmh-editorial-v2 a.pmh-editorial-v2__button--light {
    background: var(--pmh-sand-light) !important;
    border-color: var(--pmh-sand-light) !important;
    color: var(--pmh-charcoal) !important;
}

html body .pmh-editorial-v2 a.pmh-editorial-v2__button--light:is(:hover, :focus-visible) {
    background: transparent !important;
    color: var(--pmh-sand-light) !important;
}

/* Keep the persistent newsletter action available while limiting the amount
   of editorial copy it can cover on laptop-height viewports. */
html body .pdm-newsletter-float {
    max-width: 220px !important;
    padding: 12px 16px !important;
}

body:is(.page-id-7798, .page-id-8220, .page-id-7802, .page-id-8218) :is(
    .pmh-donation__submit,
    .pmh-membership__submit,
    .pmh-pay-panel button
):is(:hover, :focus-visible) {
    background: var(--pmh-olive-deep) !important;
    border-color: var(--pmh-olive-deep) !important;
    color: var(--pmh-ivory-warm) !important;
}

@media (max-width: 900px) {
    .pmh-story-v2__timeline,
    .pmh-governance-v2__bodies,
    .pmh-story-v2__gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .pmh-story-v2__timeline,
    .pmh-governance-v2__bodies,
    .pmh-story-v2__gallery {
        grid-template-columns: 1fr;
    }

    .pmh-story-v2__timeline article,
    .pmh-governance-v2__bodies article {
        min-height: 0;
    }

    .pmh-story-v2__gallery img,
    .pmh-story-v2__gallery img:nth-child(even) {
        height: 280px;
        transform: none;
    }

    .pmh-governance-v2__facts p {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .pmh-governance-v2__facts strong {
        text-align: left;
    }
}

/* ========================================================================== */
/* 2.3.5.16 — shorter archives, richer editorial rhythm, cleaner Mission.     */
/* ========================================================================== */

/* The approved Mission composition replaces, rather than precedes, the old
   Elementor narrative. Keeping the legacy node in the response preserves an
   easy rollback without exposing duplicated headings or copy to visitors. */
body:is(.page-id-12, .page-id-8167) .pmh-mission-v2__legacy {
    display: none !important;
}

/* A compact data band breaks the repeated title/cards cadence on programme
   overview pages while keeping the information factual and evergreen. */
.pmh-editorial-v2__fact-band {
    background: var(--pmh-charcoal);
    color: var(--pmh-ivory-warm);
    padding-block: 32px;
}

.pmh-editorial-v2__fact-band-inner {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(170px, 0.72fr) minmax(260px, 1.15fr) minmax(300px, 1.5fr);
}

.pmh-editorial-v2__fact-band p {
    align-items: center;
    display: flex;
    gap: 18px;
    margin: 0;
    min-height: 82px;
    padding: 8px 28px;
}

.pmh-editorial-v2__fact-band p + p {
    border-left: 1px solid rgba(226, 213, 191, 0.34);
}

.pmh-editorial-v2__fact-band strong {
    color: var(--pmh-sand-light);
    font-size: clamp(42px, 5vw, 68px);
    letter-spacing: -0.04em;
    line-height: 0.9;
}

.pmh-editorial-v2__fact-band span {
    color: var(--pmh-ivory-warm);
    font-size: 15px;
    font-weight: 720;
    line-height: 1.35;
    max-width: 220px;
}

.pmh-editorial-v2__fact-band .pmh-editorial-v2__fact-statement {
    color: var(--pmh-sand-light);
    font-size: clamp(20px, 2.1vw, 29px);
    font-weight: 650;
    line-height: 1.3;
}

/* Pull quotes and first-person testimony introduce editorial breathing space
   without inventing additional card systems. */
.pmh-editorial-v2__pullquote,
.pmh-editorial-v2__testimony {
    margin: 0;
    padding-block: clamp(48px, 6vw, 76px);
}

.pmh-editorial-v2__pullquote {
    background: var(--pmh-sand-light);
}

.pmh-editorial-v2__testimony {
    background: var(--pmh-olive-deep);
}

.pmh-editorial-v2__pullquote .pmh-editorial-v2__inner,
.pmh-editorial-v2__testimony .pmh-editorial-v2__inner {
    display: grid;
    gap: 26px;
    grid-template-columns: minmax(0, 4fr) minmax(220px, 1fr);
}

.pmh-editorial-v2__pullquote blockquote,
.pmh-editorial-v2__testimony blockquote {
    border-left: 7px solid var(--pmh-brick);
    font-size: clamp(31px, 4vw, 54px);
    font-weight: 720;
    letter-spacing: -0.03em;
    line-height: 1.08;
    margin: 0;
    padding-left: clamp(26px, 4vw, 52px);
}

.pmh-editorial-v2__pullquote blockquote {
    color: var(--pmh-charcoal);
}

.pmh-editorial-v2__testimony blockquote {
    color: var(--pmh-sand-light);
}

.pmh-editorial-v2__pullquote .pmh-editorial-v2__inner > p,
.pmh-editorial-v2__testimony .pmh-editorial-v2__inner > p {
    align-self: end;
    font-size: 12px;
    font-weight: 760;
    letter-spacing: 0.11em;
    line-height: 1.5;
    margin: 0;
    text-transform: uppercase;
}

.pmh-editorial-v2__pullquote .pmh-editorial-v2__inner > p {
    color: var(--pmh-brick);
}

.pmh-editorial-v2__testimony .pmh-editorial-v2__inner > p {
    color: var(--pmh-ivory-warm);
}

/* Native <details> elements keep the press archive crawlable, keyboard
   accessible and complete while dramatically shortening its initial state. */
.pmh-press-archive {
    margin-top: 34px;
}

.pmh-press-archive__intro {
    color: var(--pmh-charcoal);
    font-size: 15px;
    margin: 0 0 24px;
    max-width: 720px;
}

.pmh-press-period {
    background: var(--pmh-ivory-warm);
    border: 1px solid rgba(36, 33, 31, 0.22);
    border-radius: 0 !important;
    margin: 0 0 16px;
}

.pmh-press-period > summary {
    align-items: center;
    color: var(--pmh-charcoal);
    cursor: pointer;
    display: grid;
    gap: 4px 24px;
    grid-template-columns: 1fr auto;
    list-style: none;
    min-height: 92px;
    padding: 20px 76px 20px 28px;
    position: relative;
}

.pmh-press-period > summary::-webkit-details-marker {
    display: none;
}

.pmh-press-period > summary::after {
    align-items: center;
    border: 1px solid var(--pmh-olive-deep);
    color: var(--pmh-olive-deep);
    content: "+";
    display: flex;
    font-size: 26px;
    height: 38px;
    justify-content: center;
    position: absolute;
    right: 24px;
    top: calc(50% - 19px);
    width: 38px;
}

.pmh-press-period[open] > summary::after {
    content: "−";
}

.pmh-press-period > summary:is(:hover, :focus-visible) {
    background: var(--pmh-sand-light);
    outline: 0;
}

.pmh-press-period > summary:focus-visible {
    box-shadow: inset 0 0 0 3px var(--pmh-brick);
}

.pmh-press-period > summary strong {
    color: var(--pmh-brick);
    font-size: clamp(25px, 3vw, 38px);
    line-height: 1.05;
}

.pmh-press-period > summary span {
    color: var(--pmh-olive-deep);
    font-size: 12px;
    font-weight: 760;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pmh-press-period__grid {
    border-top: 1px solid rgba(36, 33, 31, 0.18);
    margin: 0 !important;
    padding: 30px;
}

.pmh-press-period__body {
    border-top: 1px solid rgba(36, 33, 31, 0.18);
    padding: 0 28px 28px;
}

.pmh-press-period__body .pmh-press-phase {
    border: 0 !important;
    margin: 0 !important;
}

@media (max-width: 900px) {
    .pmh-editorial-v2__fact-band-inner {
        grid-template-columns: 1fr 1fr;
    }

    .pmh-editorial-v2__fact-band .pmh-editorial-v2__fact-statement {
        border-left: 0;
        border-top: 1px solid rgba(226, 213, 191, 0.34);
        grid-column: 1 / -1;
    }

    .pmh-editorial-v2__pullquote .pmh-editorial-v2__inner,
    .pmh-editorial-v2__testimony .pmh-editorial-v2__inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .pmh-editorial-v2__fact-band-inner {
        grid-template-columns: 1fr;
    }

    .pmh-editorial-v2__fact-band p {
        min-height: 0;
        padding: 22px 0;
    }

    .pmh-editorial-v2__fact-band p + p,
    .pmh-editorial-v2__fact-band .pmh-editorial-v2__fact-statement {
        border-left: 0;
        border-top: 1px solid rgba(226, 213, 191, 0.34);
        grid-column: auto;
    }

    .pmh-editorial-v2__pullquote blockquote,
    .pmh-editorial-v2__testimony blockquote {
        font-size: clamp(29px, 9vw, 40px);
    }

    .pmh-press-period > summary {
        align-items: start;
        grid-template-columns: 1fr;
        min-height: 84px;
        padding: 18px 62px 18px 20px;
    }

    .pmh-press-period > summary::after {
        right: 16px;
    }

    .pmh-press-period__grid,
    .pmh-press-period__body {
        padding: 20px;
    }
}

/* ========================================================================== */
/* 2.3.5.17 — faithful photo framing and safer editorial layouts.             */
/* ========================================================================== */

/* Five concise cards can share one row on a large desktop, but their headings
   must remain readable without leaking into the neighbouring column. */
.pmh-editorial-v2__tile-grid--five li {
    padding-inline: 22px;
}

html body .pmh-editorial-v2__tile-grid--five h3 {
    font-size: clamp(1.35rem, 1.8vw, 1.55rem);
    hyphens: auto;
    line-height: 1.12;
    overflow-wrap: break-word;
    text-wrap: balance;
}

/* Switch to three columns before a laptop viewport makes five cards too
   narrow. This keeps the five-column signature on wide displays only. */
@media (max-width: 1240px) {
    .pmh-editorial-v2__tile-grid--five {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .pmh-editorial-v2__tile-grid--five {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    /* The mobile header overlays the top of the document. Reserve enough room
       for the section label as well as long French and English hero titles. */
    .pmh-editorial-v2__hero {
        height: auto;
        min-height: 510px;
        padding-block: calc(150px + env(safe-area-inset-top)) 30px;
    }

    .pmh-editorial-v2__tile-grid--five {
        grid-template-columns: 1fr;
    }
}
