/* Les couleurs proviennent exclusivement du Customizer. */
@font-face {
	font-family: "HM Donation Brown";
	src: url("../fonts/BrownStd-Regular.woff2") format("woff2");
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: "HM Donation Brown";
	src: url("../fonts/BrownStd-Bold.woff2") format("woff2");
	font-weight: 700;
	font-display: swap;
}
@font-face {
	font-family: "HM Donation Cooper";
	src: url("../fonts/coopermdbt-regular-webfont.woff2") format("woff2");
	font-weight: 400;
	font-display: swap;
}
.hm-donation-page {
	--hm-page-soft: var(--hm-secondary);
	--hm-page-link: var(--hm-primary);
	--hm-page-link-visited: var(--hm-primary);
	background: var(--hm-background);
}
.hm-donation-page .hm-page-base-2026__body { padding: 0 0 64px; }
.hm-donation-page .hm-donation-page__content,
.hm-donation-page__header {
	width: min(1280px, calc(100% - 96px));
	max-width: none;
	margin-inline: auto;
}
.hm-donation-page__header { padding-bottom: 24px; }
/* Reprendre le fil d’Ariane canonique du thème, y compris ses états mobiles. */
.hm-donation-page__header .hm-page-base-2026__breadcrumb h1 {
	display: inline;
	margin: 0;
	font: inherit;
	color: inherit;
	letter-spacing: inherit;
	text-transform: none;
}
.hm-donation-layout.hm-donation-layout {
	color: var(--hm-primary);
	font: 400 18px/1.65 "HM Donation Brown", sans-serif;
	overflow-wrap: anywhere;
}
.hm-donation-layout.hm-donation-layout * { box-sizing: border-box; }
/* Les thèmes classiques ajoutent ce conteneur au rendu des groupes Gutenberg.
 * Le neutraliser pour que les cartes et sections occupent les vraies cellules. */
.hm-donation-layout.hm-donation-layout .wp-block-group__inner-container { display: contents; }
.hm-donation-layout.hm-donation-layout :is(h2, h3, p, figure, ul, ol, .wp-block-group, .wp-block-buttons) {
	margin-block-start: 0;
}
.hm-donation-layout.hm-donation-layout :is(h2, h3) {
	color: var(--hm-primary);
	font-family: "HM Donation Brown", sans-serif;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	text-align: start;
	border: 0;
	padding: 0;
	line-height: 1.18;
}
.hm-donation-layout.hm-donation-layout h2 { font-size: clamp(1.65rem, 2.4vw, 2.25rem); margin-bottom: 24px; }
.hm-donation-layout.hm-donation-layout h3 { font-size: 1.35rem; margin-block: 28px 14px; }
.hm-donation-layout.hm-donation-layout p { margin-bottom: 20px; }
.hm-donation-layout.hm-donation-layout strong { font-family: inherit; font-weight: 700; }
.hm-donation-layout.hm-donation-layout .hm-donation-amount { white-space: nowrap; overflow-wrap: normal; word-break: normal; }
.hm-donation-layout.hm-donation-layout :is(ul, ol) { margin-bottom: 24px; padding-inline-start: 24px; }
.hm-donation-layout.hm-donation-layout li { margin-bottom: 14px; }
.hm-donation-layout.hm-donation-layout :is(ul, ol, li) { font: inherit; }
.hm-donation-layout.hm-donation-layout a:not(.wp-block-button__link) {
	color: var(--hm-primary);
	background-image: none;
	text-decoration: underline;
	text-decoration-color: var(--hm-accent);
	text-underline-offset: .2em;
}
.hm-donation-page .hm-donation-layout a[href]:not([class]):not(.bouton > a):not(:has(> img, > picture, > figure)) {
	color: var(--hm-primary);
	background-image: none;
	text-decoration: underline;
	text-decoration-color: var(--hm-accent);
}
.hm-donation-layout.hm-donation-layout ol > li::before { color: var(--hm-background); }
.hm-donation-layout.hm-donation-layout :is(a, summary):focus-visible {
	outline: 3px solid var(--hm-primary);
	outline-offset: 5px;
}
.hm-donation-layout.hm-donation-layout [id] { scroll-margin-top: 120px; }
.hm-donation-layout.hm-donation-layout .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-block: 24px;
}
.hm-donation-layout.hm-donation-layout .wp-block-button { max-width: 100%; }
.hm-donation-layout.hm-donation-layout .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	max-width: 100%;
	padding: 14px 24px;
	background: var(--hm-primary);
	color: var(--hm-background);
	border: 2px solid var(--hm-primary);
	border-radius: 999px;
	font: 700 16px/1.4 "HM Donation Brown", sans-serif;
	letter-spacing: 0;
	text-transform: none;
	text-decoration: none;
	white-space: normal;
	text-align: center;
}
.hm-donation-layout.hm-donation-layout .wp-block-button__link:hover {
	background: var(--hm-background);
	color: var(--hm-primary);
}
.hm-donation-layout.hm-donation-layout .hm-donation-hero {
	padding: clamp(28px, 5vw, 64px);
	background: var(--hm-secondary);
	border-radius: 4px 4px 40px 4px;
	margin-bottom: 48px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-hero h2 {
	max-width: 900px;
	font: 400 clamp(2.2rem, 4.4vw, 4rem)/1.08 "HM Donation Cooper", serif;
	margin-bottom: 24px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-hero p { max-width: 820px; }
.hm-donation-layout.hm-donation-layout .hm-donation-hero p:last-child { font-size: 14px; margin-bottom: 0; }
.hm-donation-layout.hm-donation-layout .hm-donation-hero:has(+ .hm-donation-highlights) { margin-bottom: 24px; }
.hm-donation-layout.hm-donation-layout .hm-donation-highlights {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 48px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-highlight {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 28px;
	border: 1px solid var(--hm-primary);
	border-inline-start: 6px solid var(--hm-accent2);
	border-radius: 4px;
	background: var(--hm-background);
}
.hm-donation-layout.hm-donation-layout .hm-donation-highlight--actions { border-inline-start-color: var(--hm-accent); }
.hm-donation-layout.hm-donation-layout .hm-donation-highlight__label {
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 12px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-highlight h2 { font-size: clamp(24px, 2.3vw, 30px); min-height: 2.36em; margin-bottom: 16px; }
.hm-donation-layout.hm-donation-layout .hm-donation-highlight__benefit {
	min-height: 2.6em;
	margin-bottom: 16px;
	color: var(--hm-accent);
	font-size: clamp(20px, 1.8vw, 24px);
	font-weight: 700;
	line-height: 1.3;
}
.hm-donation-layout.hm-donation-layout .hm-donation-highlight__link { margin-block: auto 0; }
.hm-donation-layout.hm-donation-layout .hm-donation-highlight__link a { display: inline-block; padding-block: 10px; min-height: 44px; }
.hm-donation-layout.hm-donation-layout .hm-donation-paths {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 14px;
	counter-reset: donation-path;
	margin-bottom: 56px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 24px 20px 16px;
	margin: 0;
	border: 1px solid var(--hm-primary);
	border-top: 4px solid var(--hm-primary);
	border-radius: 4px;
	background: var(--hm-background);
}
/* Photos décoratives modifiables avec le bloc Image de chaque carte. */
.hm-donation-layout.hm-donation-layout .hm-donation-card {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: var(--hm-primary);
	color: var(--hm-background);
}
.hm-donation-layout.hm-donation-layout .hm-donation-card .hm-donation-card__photo {
	position: absolute;
	inset: 0;
	z-index: -2;
	width: 100%;
	height: 100%;
	margin: 0;
}
.hm-donation-layout.hm-donation-layout .hm-donation-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
}
.hm-donation-layout.hm-donation-layout .hm-donation-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: color-mix(in srgb, var(--hm-primary) 78%, transparent);
	pointer-events: none;
}
.hm-donation-layout.hm-donation-layout .hm-donation-card h3,
.hm-donation-page .hm-donation-layout.hm-donation-layout .hm-donation-card a[href]:not(.wp-block-button__link) {
	color: var(--hm-background);
}
.hm-donation-layout.hm-donation-layout .hm-donation-card:nth-child(-n+2) { border-top-color: var(--hm-accent); }
.hm-donation-layout.hm-donation-layout .hm-donation-card::before {
	counter-increment: donation-path;
	content: "0" counter(donation-path);
	font-size: .8rem;
	margin-bottom: 14px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-card h3 { font-size: 20px; min-height: 3.54em; margin: 0 0 14px; }
.hm-donation-layout.hm-donation-layout .hm-donation-card p { font-size: 16px; line-height: 1.5; }
.hm-donation-layout.hm-donation-layout .hm-donation-card p:last-child { margin-top: auto; margin-bottom: 0; }
.hm-donation-layout.hm-donation-layout .hm-donation-card a { display: inline-block; padding-block: 10px; min-height: 68px; font-weight: 700; }
.hm-donation-layout.hm-donation-layout .hm-donation-quick {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 64px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-section {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	gap: 40px;
	padding-block: 48px;
	border-top: 1px solid var(--hm-primary);
	margin: 0;
}
.hm-donation-layout.hm-donation-layout .hm-donation-section__body { min-width: 0; }
/* Distinguer les sous-titres du texte et des titres principaux. */
.hm-donation-layout.hm-donation-layout .hm-donation-section__body h3 {
	color: var(--hm-accent);
	font-size: clamp(22px, 1.9vw, 26px);
	font-weight: 700;
	line-height: 1.3;
	margin-block: 40px 20px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--hm-secondary);
}

.hm-donation-layout.hm-donation-layout .hm-donation-section__body > :last-child,
.hm-donation-layout.hm-donation-layout .hm-donation-section__body > .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
.hm-donation-layout.hm-donation-layout .hm-donation-section--quick {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 32px;
	border: 0;
	border-radius: 4px;
	background: var(--hm-secondary);
}
.hm-donation-layout.hm-donation-layout .hm-donation-section--quick .hm-donation-section__body { display: flex; flex: 1; flex-direction: column; }
.hm-donation-layout.hm-donation-layout .hm-donation-section--quick .wp-block-buttons { margin-top: auto; padding-top: 12px; }
.hm-donation-layout.hm-donation-layout img { display: block; width: 100%; height: auto; border-radius: 4px; }
.hm-donation-layout.hm-donation-layout .wp-element-caption { font-size: .8rem; line-height: 1.5; margin-top: 10px; }
.hm-donation-layout.hm-donation-layout .hm-donation-section--contact { padding: 32px; border: 0; background: var(--hm-secondary); }
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table {
	max-width: 100%;
	overflow-x: auto;
	margin-block: 24px;
}
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table table {
	width: 100%;
	min-width: 620px;
	border-collapse: collapse;
	table-layout: fixed;
	font: 400 16px/1.5 "HM Donation Brown", sans-serif;
}
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table :is(th, td) {
	padding: 14px 12px;
	border: 1px solid var(--hm-primary);
	color: var(--hm-primary);
	background: var(--hm-background);
	text-align: right;
	vertical-align: middle;
	overflow-wrap: normal;
}
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table tr > :first-child { width: 38%; text-align: left; }
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table th { font-weight: 700; }
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table thead th,
.hm-donation-layout.hm-donation-layout .hm-donation-tax-table tbody tr:last-child > * { background: var(--hm-secondary); }
.hm-donation-layout.hm-donation-layout .hm-donation-tax-note { font-size: 14px; line-height: 1.6; }
.hm-donation-layout.hm-donation-layout .hm-donation-table-hint { display: none; font-size: 14px; }
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail {
	margin: 0 0 14px;
	border: 1px solid var(--hm-primary);
	border-radius: 4px;
	background: var(--hm-background);
}
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail > summary {
	display: list-item;
	list-style: disclosure-closed inside;
	padding: 18px 20px;
	min-height: 48px;
	font: 700 18px/1.5 "HM Donation Brown", sans-serif;
	cursor: pointer;
}
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail[open] > summary {
	list-style-type: disclosure-open;
	background: var(--hm-secondary);
	border-bottom: 1px solid var(--hm-primary);
}
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail > :not(summary) { margin-inline: 20px; }
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail > summary + * { margin-top: 20px; }
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail > :last-child { margin-bottom: 20px; }
.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail h4 { font: 700 18px/1.5 "HM Donation Brown", sans-serif; margin-block: 20px 12px; }
.hm-donation-layout.hm-donation-layout .hm-donation-planned-sources { font-size: 14px; }
@media (max-width: 1100px) {
	.hm-donation-layout.hm-donation-layout .hm-donation-paths { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hm-donation-layout.hm-donation-layout .hm-donation-card h3 { min-height: 2.36em; }
	.hm-donation-layout.hm-donation-layout .hm-donation-table-hint { display: block; }
}
@media (max-width: 780px) {
	.hm-donation-page__header .hm-page-base-2026__breadcrumb { padding-inline: 0; }
	.hm-donation-page__header .hm-page-base-2026__breadcrumb ol {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 10px;
		overflow: visible;
		white-space: normal;
	}
	.hm-donation-page__header .hm-page-base-2026__breadcrumb li[aria-current="page"] {
		flex-shrink: 1;
		min-width: 0;
		max-width: 100%;
	}

	.hm-donation-page .hm-donation-page__content,
	.hm-donation-page__header { width: calc(100% - 40px); }
	.hm-donation-layout.hm-donation-layout .hm-donation-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hm-donation-layout.hm-donation-layout .hm-donation-quick { grid-template-columns: 1fr; }
	.hm-donation-layout.hm-donation-layout .hm-donation-highlights { grid-template-columns: 1fr; gap: 16px; margin-bottom: 36px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-highlight { padding: 24px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-highlight h2,
	.hm-donation-layout.hm-donation-layout .hm-donation-highlight__benefit { min-height: 0; }
	.hm-donation-layout.hm-donation-layout .hm-donation-section { grid-template-columns: 1fr; gap: 0; padding-block: 32px; }
	.hm-donation-layout.hm-donation-layout :is(.hm-donation-section--quick, .hm-donation-section--contact) { padding: 24px; }
}
@media (max-width: 540px) {
	.hm-donation-layout.hm-donation-layout { font-size: 16px; line-height: 1.65; }
	.hm-donation-layout.hm-donation-layout .hm-donation-hero { padding: 28px 22px; margin-bottom: 32px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-paths { grid-template-columns: 1fr; gap: 12px; margin-bottom: 36px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-card { padding: 20px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-card h3 { min-height: 0; }
	.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail > summary { padding: 16px; font-size: 16px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-planned-detail > :not(summary) { margin-inline: 16px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-card a { min-height: 44px; }
	.hm-donation-layout.hm-donation-layout .hm-donation-card::before { margin-bottom: 8px; }
	.hm-donation-layout.hm-donation-layout .wp-block-button,
	.hm-donation-layout.hm-donation-layout .wp-block-button__link { width: 100%; }
	.hm-donation-layout.hm-donation-layout .hm-donation-quick { gap: 16px; margin-bottom: 36px; }
}

/* Accès commun FR / EN au document canonique d’export. */
.hm-donation-page__actions { display: flex; justify-content: flex-end; margin-top: 18px; }
.hm-donation-page .hm-donation-export {
	display: inline-flex; align-items: center; gap: 10px; min-height: 44px;
	padding: 10px 18px; border: 1px solid var(--hm-primary); border-radius: 4px;
	background: var(--hm-background); color: var(--hm-primary);
	font: 700 14px/1.4 "HM Donation Brown", sans-serif; text-decoration: none;
}
.hm-donation-page .hm-donation-export:hover { background: var(--hm-secondary); }
.hm-donation-page .hm-donation-export:focus-visible { outline: 3px solid var(--hm-accent); outline-offset: 3px; }
