/* Mobile header refresh: balanced controls, clearer logo and compact menu. */
@media screen and (max-width: 1023px) {
  body.hm-mobile-menu-open {
    overflow: hidden;
  }

  #header {
    display: flex;
    align-items: center;
    height: 72px;
    padding: 0 14px;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
    box-shadow: 0 8px 24px rgba(25, 29, 39, .14);
  }

  #header #trigger-menu-mobile {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .34);
    border-radius: 14px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-size: 19px;
    line-height: 1;
    cursor: pointer;
    transform: translateY(-50%);
    transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
    -webkit-appearance: none;
    appearance: none;
  }

  #header #trigger-menu-mobile:hover,
  #header #trigger-menu-mobile:focus-visible {
    border-color: #fff;
    background: rgba(255, 255, 255, .16);
  }

  #header #trigger-menu-mobile:focus-visible,
  #header .right-nav .language-switcher li.lang-switcher a:focus-visible,
  #header .dropdown-nav a:focus-visible {
    outline: 3px solid var(--hm-accent2);
    outline-offset: 2px;
  }

  #header #trigger-menu-mobile:active {
    transform: translateY(-50%) scale(.96);
  }

  #header #trigger-menu-mobile.activeawesome {
    border-color: #fff;
    background: #fff;
    color: var(--hm-primary);
  }

  #header #trigger-menu-mobile .fa {
    width: 1em;
    line-height: 1;
    text-align: center;
  }

  #header .logo {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translate(-50%, -50%);
  }

  #header .logo img {
    display: block;
    width: 144px;
    max-width: calc(100vw - 164px);
    height: auto;
    margin: 0;
  }

  #header .right-nav {
    position: absolute;
    z-index: 4;
    top: 50%;
    right: 14px;
    display: block;
    margin: 0;
    transform: translateY(-50%);
  }

  #header .right-nav .language-switcher {
    margin: 0;
  }

  #header .right-nav .language-switcher li.lang-switcher {
    display: block;
    margin: 0;
  }

  #header .right-nav .language-switcher li.lang-switcher a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 36px;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, .34);
    border-radius: 999px;
    color: #fff;
    font-family: "BrownStd-Bold", sans-serif;
    font-size: 12px;
    letter-spacing: .12em;
    line-height: 1;
    text-indent: .12em;
    text-transform: uppercase;
    transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
  }

  #header .right-nav .language-switcher li.lang-switcher a:hover,
  #header .right-nav .language-switcher li.lang-switcher a:focus-visible {
    border-color: #fff;
    background: #fff;
    color: var(--hm-primary);
  }

  #header .logo + .dropdown-nav {
    margin-left: 0;
  }

  #header #search-trigger,
  #header #search-zone {
    display: none;
  }

  #header .dropdown-nav {
    position: absolute;
    top: 72px;
    right: 10px;
    left: 10px;
    width: auto;
    max-height: 0;
    overflow: hidden;
    border-radius: 0 0 18px 18px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(25, 29, 39, .2);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px);
    visibility: hidden;
    transition: max-height 360ms ease, opacity 180ms ease, transform 240ms ease, visibility 0s linear 360ms;
  }

  #header .dropdown-nav.open {
    max-height: calc(100vh - 92px);
    max-height: calc(100dvh - 92px);
    overflow-x: hidden;
    overflow-y: auto;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
    -webkit-overflow-scrolling: touch;
    transition: max-height 420ms ease, opacity 180ms ease, transform 240ms ease;
  }

  #header .dropdown-nav > ul.dropdown-nav-level {
    margin: 0;
    padding: 10px 0 14px;
  }

  #header .dropdown-nav > ul.dropdown-nav-level > li {
    width: 100%;
    border: 0;
    border-bottom: 1px solid rgba(57, 62, 74, .1);
    background: transparent;
    text-align: left;
  }

  #header .dropdown-nav > ul.dropdown-nav-level > li:last-child {
    border-bottom: 0;
  }

  #header .dropdown-nav > ul.dropdown-nav-level > li > a {
    min-height: 56px;
    padding: 0 22px;
    color: var(--hm-primary);
    font-size: 14px;
    line-height: 56px;
    text-align: left;
  }

  #header .dropdown-nav > ul.dropdown-nav-level > li > a:hover,
  #header .dropdown-nav > ul.dropdown-nav-level > li > a:focus-visible,
  #header .dropdown-nav > ul.dropdown-nav-level > li > a.active {
    background: var(--hm-grey1);
    color: var(--hm-accent);
  }

  #header .dropdown-nav > ul.dropdown-nav-level > li > div.drowndown-level {
    top: auto;
  }

  #header .dropdown-nav > ul.dropdown-nav-level > li > div.drowndown-level > ul > li > a {
    padding-right: 22px;
    padding-left: 34px;
  }

  #overlay-menu-mobile {
    top: 72px;
    height: calc(100% - 72px);
    background: rgba(25, 29, 39, .58);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
  }

  body.hm-has-special-banner #overlay-menu-mobile {
    top: calc(72px + var(--hm-special-banner-height));
    height: calc(100% - 72px - var(--hm-special-banner-height));
  }

  #section {
    margin-top: 72px;
  }

  .isFrontPage #section2024 {
    padding-top: 72px !important;
  }

  body.hm-has-special-banner.isFrontPage #section2024 {
    padding-top: calc(72px + var(--hm-special-banner-height)) !important;
  }
}

@media screen and (max-width: 359px) {
  #header {
    padding-right: 10px;
    padding-left: 10px;
  }

  #header #trigger-menu-mobile {
    left: 10px;
  }

  #header .right-nav {
    right: 10px;
  }

  #header .logo img {
    width: 132px;
    max-width: calc(100vw - 152px);
  }
}

@media (prefers-reduced-motion: reduce) {
  #header #trigger-menu-mobile,
  #header .right-nav .language-switcher li.lang-switcher a,
  #header .dropdown-nav,
  #header .dropdown-nav.open {
    transition: none;
  }
}
/*
 * Héritage Montréal — header 2026
 * Couche isolée du thème historique afin de garder la navigation maintenable.
 */

body.hm-header-2026 {
	--hm-header-height: 86px;
	--hm-header-gutter: clamp(20px, 4vw, 72px);
	--hm-header-ink: var(--hm-primary, #171d22);
	--hm-header-paper: var(--hm-grey1, #f4f1e9);
	--hm-home-surface: var(--hm-background, #edf1fa);
	--hm-header-line: rgba(255, 255, 255, .22);
	--hm-header-glass: color-mix(in srgb, var(--hm-primary, #171d22) 72%, transparent);
	--hm-header-accent: var(--hm-accent, #e8602c);
}

.hm-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

#header.hm-site-header {
	position: relative;
	z-index: auto;
	top: auto;
	left: auto;
	display: block;
	width: 100%;
	height: auto;
	padding: 0;
	background: var(--hm-header-ink);
}

#header.hm-site-header--compact {
	height: var(--hm-header-height);
}

body.hm-has-special-banner #header.hm-site-header--compact {
	height: calc(var(--hm-header-height) + var(--hm-special-banner-height));
}

.hm-header-bar {
	position: absolute;
	z-index: 200;
	top: 0;
	left: 0;
	width: 100%;
	height: var(--hm-header-height);
	border-bottom: 1px solid transparent;
	background: linear-gradient(180deg, color-mix(in srgb, var(--hm-primary, #171d22) 84%, transparent), color-mix(in srgb, var(--hm-primary, #171d22) 14%, transparent));
	color: #fff;
	transition: background-color 240ms ease, border-color 240ms ease, box-shadow 240ms ease;
}

body.hm-has-special-banner .hm-header-bar {
	top: var(--hm-special-banner-height);
}

.hm-site-header--compact .hm-header-bar,
body.hm-mobile-menu-open .hm-header-bar,
body.hm-search-open .hm-header-bar {
	border-color: rgba(255, 255, 255, .12);
	background: color-mix(in srgb, var(--hm-primary, #171d22) 94%, transparent);
	box-shadow: 0 8px 34px color-mix(in srgb, var(--hm-primary, #171d22) 18%, transparent);
	-webkit-backdrop-filter: blur(18px) saturate(120%);
	backdrop-filter: blur(18px) saturate(120%);
}

.hm-header-bar__inner {
	display: grid;
	grid-template-columns: 174px minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(22px, 3vw, 54px);
	width: 100%;
	max-width: 1680px;
	height: 100%;
	margin: 0 auto;
	padding: 0 var(--hm-header-gutter);
}

#header .hm-header-logo {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	width: 174px;
	height: 100%;
}

#header .hm-header-logo img {
	display: block;
	width: 174px;
	height: auto;
	margin: 0;
}

#header .hm-primary-navigation {
	display: flex;
	align-items: stretch;
	align-self: stretch;
	min-width: 0;
	margin: 0;
}

#header .hm-primary-navigation > ul {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: clamp(2px, .6vw, 14px);
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}

#header .hm-primary-navigation > ul > li {
	position: relative;
	display: flex;
	align-items: stretch;
	height: 100%;
	margin: 0;
}

#header .hm-primary-navigation > ul > li > a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	padding: 0 clamp(8px, 1vw, 17px);
	color: rgba(255, 255, 255, .9);
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: 11.5px;
	font-weight: normal;
	letter-spacing: .105em;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	transition: color 180ms ease;
}

#header .hm-primary-navigation > ul > li > a:hover,
#header .hm-primary-navigation > ul > li > a:focus-visible,
#header .hm-primary-navigation > ul > li > a.active,
#header .hm-primary-navigation > ul > li.submenu-open > a {
	color: #fff;
}

#header .hm-nav-link-marker {
	position: absolute;
	right: clamp(8px, 1vw, 17px);
	bottom: 17px;
	left: clamp(8px, 1vw, 17px);
	height: 2px;
	background: var(--hm-header-accent);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 220ms ease;
}

#header .hm-primary-navigation > ul > li > a:hover .hm-nav-link-marker,
#header .hm-primary-navigation > ul > li > a:focus-visible .hm-nav-link-marker,
#header .hm-primary-navigation > ul > li > a.active .hm-nav-link-marker,
#header .hm-primary-navigation > ul > li.submenu-open > a .hm-nav-link-marker {
	transform: scaleX(1);
}

#header .hm-submenu-toggle {
	position: relative;
	align-self: center;
	width: 27px;
	height: 34px;
	margin: 0 3px 0 -8px;
	padding: 0;
	border: 0;
	background: transparent;
	color: rgba(255, 255, 255, .8);
	cursor: pointer;
}

#header .hm-submenu-toggle span::before,
#header .hm-submenu-toggle span::after {
	position: absolute;
	top: 16px;
	width: 6px;
	height: 1px;
	background: currentColor;
	content: "";
	transition: transform 180ms ease;
}

#header .hm-submenu-toggle span::before {
	left: 8px;
	transform: rotate(42deg);
}

#header .hm-submenu-toggle span::after {
	right: 8px;
	transform: rotate(-42deg);
}

#header li.submenu-open > .hm-submenu-toggle span::before {
	transform: rotate(-42deg);
}

#header li.submenu-open > .hm-submenu-toggle span::after {
	transform: rotate(42deg);
}

#header .hm-primary-navigation > ul > li > .drowndown-level {
	position: absolute;
	top: calc(100% - 8px);
	left: 50%;
	width: min(330px, 86vw);
	height: auto;
	max-height: 0;
	padding-top: 8px;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, -8px);
	transition: max-height 0s linear 220ms, opacity 160ms ease, transform 220ms ease;
}

#header .hm-primary-navigation > ul > li:hover > .drowndown-level,
#header .hm-primary-navigation > ul > li:focus-within > .drowndown-level,
#header .hm-primary-navigation > ul > li.submenu-open > .drowndown-level {
	max-height: 640px;
	opacity: 1;
	pointer-events: auto;
	transform: translate(-50%, 0);
	transition: max-height 0s, opacity 160ms ease, transform 220ms ease;
}

#header .hm-primary-navigation .drowndown-level > ul {
	min-width: 0;
	margin: 0;
	padding: 12px;
	border: 1px solid rgba(20, 26, 31, .08);
	border-radius: 3px;
	background: rgba(249, 247, 242, .98);
	box-shadow: 0 24px 64px rgba(8, 14, 18, .22);
	-webkit-backdrop-filter: blur(18px);
	backdrop-filter: blur(18px);
}

#header .hm-primary-navigation .drowndown-level li {
	position: relative;
	margin: 0;
}

#header .hm-primary-navigation .drowndown-level > ul > li > a,
#header .hm-primary-navigation .drowndown-level > ul > li > ul > li > a {
	display: block;
	padding: 11px 13px;
	border-radius: 2px;
	color: var(--hm-header-ink);
	font-family: "BrownStd-Regular", Arial, sans-serif;
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 1.25;
	text-transform: none;
	white-space: normal;
	transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

#header .hm-primary-navigation .drowndown-level > ul > li > a:hover,
#header .hm-primary-navigation .drowndown-level > ul > li > a:focus-visible,
#header .hm-primary-navigation .drowndown-level > ul > li > a.active,
#header .hm-primary-navigation .drowndown-level > ul > li > ul > li > a:hover,
#header .hm-primary-navigation .drowndown-level > ul > li > ul > li > a:focus-visible {
	background: rgba(23, 29, 34, .06);
	color: var(--hm-header-accent);
	transform: translateX(2px);
}

#header .hm-primary-navigation .drowndown-level > ul > li > ul {
	margin: -3px 0 6px;
	padding: 0 0 0 15px;
	border-left: 1px solid rgba(23, 29, 34, .12);
}

#header .hm-primary-navigation .drowndown-level > ul > li > ul > li > a {
	padding-top: 8px;
	padding-bottom: 8px;
	font-size: 13px;
	opacity: .82;
}

.hm-header-tools {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
}

#header .hm-header-tools .language-switcher {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

#header .hm-header-tools .language-switcher li {
	display: block;
	margin: 0;
}

#header .hm-header-tools .language-switcher a,
#header .hm-search-trigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid var(--hm-header-line);
	border-radius: 50%;
	background: rgba(255, 255, 255, .045);
	color: #fff;
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: 10.5px;
	letter-spacing: .08em;
	line-height: 1;
	text-transform: uppercase;
	transition: border-color 180ms ease, background-color 180ms ease, color 180ms ease;
}

#header .hm-header-tools .language-switcher a:hover,
#header .hm-header-tools .language-switcher a:focus-visible,
#header .hm-search-trigger:hover,
#header .hm-search-trigger:focus-visible,
body.hm-search-open #header .hm-search-trigger {
	border-color: #fff;
	background: #fff;
	color: var(--hm-header-ink);
}

#header #search-trigger.hm-search-trigger {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid var(--hm-header-line);
	border-radius: 50%;
	background: rgba(255, 255, 255, .045);
	color: #fff;
	right: auto;
	top: auto;
	font-size: inherit;
	line-height: 1;
	cursor: pointer;
}

.hm-search-icon {
	position: relative;
	display: block;
	width: 15px;
	height: 15px;
	border: 1.5px solid currentColor;
	border-radius: 50%;
}

.hm-search-icon::after {
	position: absolute;
	right: -5px;
	bottom: -3px;
	width: 7px;
	height: 1.5px;
	background: currentColor;
	content: "";
	transform: rotate(45deg);
	transform-origin: left center;
}

.hm-menu-trigger {
	display: none;
}

.hm-search-zone {
	position: fixed;
	z-index: 205;
	top: var(--hm-header-height);
	right: var(--hm-header-gutter);
	width: min(680px, calc(100vw - (var(--hm-header-gutter) * 2)));
	height: auto;
	max-height: 0;
	overflow: hidden;
	border-radius: 0 0 3px 3px;
	background: #faf8f3;
	box-shadow: 0 30px 80px color-mix(in srgb, var(--hm-primary, #171d22) 24%, transparent);
	opacity: 0;
	pointer-events: none;
	transform: translateY(-10px);
	transition: max-height 0s linear 220ms, opacity 180ms ease, transform 220ms ease;
}

body.hm-has-special-banner .hm-search-zone {
	top: calc(var(--hm-header-height) + var(--hm-special-banner-height));
}

body.hm-search-open .hm-search-zone {
	max-height: calc(100vh - var(--hm-header-height) - 30px);
	overflow-y: auto;
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	transition: max-height 0s, opacity 180ms ease, transform 220ms ease;
}

#header .hm-search-field {
	position: relative;
	display: flex;
	align-items: center;
	border-bottom: 1px solid rgba(23, 29, 34, .12);
}

#header .hm-search-field input {
	width: 100%;
	height: 88px;
	padding: 0 70px 0 30px;
	border: 0;
	background: transparent;
	color: var(--hm-header-ink);
	font-family: "BrownStd-Light", Arial, sans-serif;
	font-size: clamp(20px, 2vw, 29px);
	line-height: 1;
}

#header .hm-search-field input:focus {
	outline: 0;
	box-shadow: inset 0 -3px var(--hm-header-accent);
}

#header .hm-search-field > .hm-search-icon {
	position: absolute;
	right: 34px;
	color: var(--hm-header-accent);
}

#header #mask-search-ajax-drop {
	max-height: min(560px, calc(100vh - 210px));
	overflow-y: auto;
}

#overlay-menu-mobile {
	position: fixed;
	z-index: 190;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	height: auto;
	background: color-mix(in srgb, var(--hm-primary, #171d22) 62%, transparent);
	opacity: 0;
	pointer-events: none;
	cursor: pointer;
	transition: opacity 220ms ease;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

body.hm-has-special-banner #overlay-menu-mobile {
	top: 0;
	height: auto;
}

#overlay-menu-mobile[aria-hidden="false"] {
	opacity: 1;
	pointer-events: auto;
}

body.hm-mobile-menu-open {
	overflow: hidden;
}

#search-overlay {
	display: none !important;
}

.hm-home-hero {
	position: relative;
	display: grid;
	min-height: max(680px, 100svh);
	overflow: hidden;
	background: var(--hm-header-ink);
	color: #fff;
	isolation: isolate;
}

.hm-home-hero__media,
.hm-home-hero__veil {
	position: absolute;
	z-index: -2;
	inset: 0;
}

.hm-home-hero__media img,
.hm-home-hero__media video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 46%;
	filter: saturate(.72) contrast(1.03);
	transform: scale(1.012);
}

/* Vidéo d’accueil : couleurs plus soutenues sur desktop et mobile. */
.hm-home-hero__media video {
	filter: saturate(1.05) contrast(1.03);
}

.hm-home-hero__veil {
	z-index: -1;
	background:
		linear-gradient(90deg, color-mix(in srgb, var(--hm-primary, #171d22) 50%, transparent) 0%, color-mix(in srgb, var(--hm-primary, #171d22) 36%, transparent) 42%, color-mix(in srgb, var(--hm-primary, #171d22) 8%, transparent) 78%),
		linear-gradient(180deg, color-mix(in srgb, var(--hm-primary, #171d22) 16%, transparent) 0%, transparent 68%, color-mix(in srgb, var(--hm-primary, #171d22) 34%, transparent) 88%, var(--hm-home-surface) 100%);
}

.hm-home-hero__inner {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	box-sizing: border-box;
	width: 100%;
	max-width: 1680px;
	min-height: inherit;
	margin: 0 auto;
	padding: calc(var(--hm-header-height) + clamp(28px, 4vh, 54px)) var(--hm-header-gutter) clamp(44px, 5.5vh, 68px);
}

.hm-home-hero__anniversary {
	width: max-content;
	margin: 0 0 18px;
	padding: 8px 12px 7px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 999px;
	color: rgba(255, 255, 255, .88);
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: 10.5px;
	letter-spacing: .17em;
	line-height: 1;
	text-transform: uppercase;
}

.hm-home-hero h1 {
	max-width: 820px;
	margin: 0;
	color: rgba(255, 255, 255, .84);
	font-family: "BrownStd-Regular", Arial, sans-serif;
	font-size: clamp(14px, 1.15vw, 18px);
	font-weight: normal;
	letter-spacing: .01em;
	line-height: 1.32;
}

.hm-home-hero__statement {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	row-gap: .1em;
	width: min(1100px, 100%);
	margin: clamp(24px, 4vh, 48px) 0 0;
	color: #fff;
	font-family: "BrownStd-Light", Arial, sans-serif;
	font-size: clamp(36px, 4.7vw, 68px);
	font-weight: normal;
	letter-spacing: -.045em;
	line-height: .92;
}

.hm-home-hero__statement > span {
	display: block;
}

.hm-home-hero__statement > .hm-home-hero__city {
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-style: normal;
	font-weight: normal;
}

.hm-home-hero__phrase > em,
.hm-home-hero__heritage,
.hm-home-hero__you,
.hm-home-hero__words b {
	color: var(--hm-header-accent);
	font-family: "Cooper", Georgia, serif;
	font-style: italic;
	font-weight: normal;
	letter-spacing: -.035em;
	line-height: .92;
}

.hm-home-hero__statement > .hm-home-hero__phrase {
	display: flex;
	align-items: flex-start;
	gap: .22em;
	min-width: 0;
	color: var(--hm-header-accent);
}

.hm-home-hero__phrase > em {
	flex: 0 0 auto;
}

.hm-home-hero__message {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	align-items: flex-start;
	gap: .18em;
	min-width: 0;
	overflow: hidden;
}

.hm-home-hero__heritage {
	flex: 0 0 auto;
	animation: hm-hero-heritage 15s linear infinite;
}

.hm-home-hero__words {
	position: relative;
	display: block;
	flex: 1 1 auto;
	min-width: 0;
	height: 1.02em;
	overflow: hidden;
	color: var(--hm-header-accent);
	-webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
	mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
}

.hm-home-hero__words::after {
	position: absolute;
	z-index: 2;
	inset: 0;
	background: linear-gradient(180deg, transparent 12%, rgba(255, 255, 255, .22) 48%, transparent 70%);
	content: "";
	opacity: 0;
	pointer-events: none;
	transform: translateY(110%);
	animation: hm-hero-slot-sheen 3s ease-out infinite;
}

.hm-home-hero__words b {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	white-space: nowrap;
	opacity: 0;
	filter: blur(.08em);
	transform: translate3d(0, 112%, 0) scaleY(1.08);
	transform-origin: center center;
	will-change: transform, opacity, filter;
	backface-visibility: hidden;
	animation: hm-hero-word 15s cubic-bezier(.2, .72, .22, 1) infinite;
	animation-delay: calc(var(--hm-word-index) * 3s);
}

.hm-home-hero__you {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	margin: 0;
	opacity: 0;
	filter: blur(.08em);
	transform: translate3d(0, 112%, 0) scaleY(1.08);
	transform-origin: center center;
	will-change: transform, opacity, filter;
	backface-visibility: hidden;
	animation: hm-hero-word 15s cubic-bezier(.2, .72, .22, 1) infinite;
	animation-delay: calc(var(--hm-word-index) * 3s);
}

@keyframes hm-hero-word {
	0% {
		opacity: 0;
		filter: blur(.08em);
		transform: translate3d(0, 112%, 0) scaleY(1.08);
	}
	1.8% {
		opacity: .82;
		filter: blur(.025em);
		transform: translate3d(0, -.07em, 0) scaleY(.97);
	}
	3.5%, 17% {
		opacity: 1;
		filter: blur(0);
		transform: translate3d(0, 0, 0) scaleY(1);
	}
	18.8% {
		opacity: .72;
		filter: blur(.025em);
		transform: translate3d(0, -.12em, 0) scaleY(1.02);
	}
	20.5%, 100% {
		opacity: 0;
		filter: blur(.08em);
		transform: translate3d(0, -112%, 0) scaleY(1.08);
	}
}

@keyframes hm-hero-slot-sheen {
	0%, 2% { opacity: 0; transform: translateY(110%); }
	7% { opacity: .24; }
	18%, 100% { opacity: 0; transform: translateY(-110%); }
}

@keyframes hm-hero-heritage {
	0%, 78% { opacity: 1; }
	81%, 98% { opacity: 0; }
	100% { opacity: 1; }
}

.hm-home-hero__actions {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: 100%;
	margin-top: clamp(24px, 3.6vh, 40px);
	border-top: 1px solid rgba(255, 255, 255, .32);
	border-bottom: 1px solid rgba(255, 255, 255, .32);
}

.hm-home-hero__action {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 20px;
	align-items: center;
	gap: 12px;
	min-height: 94px;
	padding: 18px 20px;
	border-right: 1px solid rgba(255, 255, 255, .26);
	background: color-mix(in srgb, var(--hm-primary, #171d22) 20%, transparent);
	color: #fff !important;
	font-family: "BrownStd-Regular", Arial, sans-serif;
	font-size: clamp(13px, 1vw, 16px);
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.hm-home-hero__action:first-child {
	background: color-mix(in srgb, var(--hm-header-accent) 88%, transparent);
}

.hm-home-hero__action:last-child {
	border-right: 0;
}

.hm-home-hero__action:hover,
.hm-home-hero__action:focus-visible {
	background: #fff;
	color: var(--hm-header-ink) !important;
	transform: translateY(-3px);
}

.hm-home-hero__action i {
	font-family: Arial, sans-serif;
	font-size: 20px;
	font-style: normal;
	text-align: right;
	transition: transform 180ms ease;
}

.hm-home-hero__action:hover i,
.hm-home-hero__action:focus-visible i {
	transform: translateX(3px);
}

.hm-hero-motion-toggle {
	position: absolute;
	z-index: 3;
	right: var(--hm-header-gutter);
	bottom: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid rgba(23, 29, 34, .3);
	border-radius: 50%;
	background: rgba(244, 241, 233, .74);
	color: var(--hm-header-ink);
	cursor: pointer;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

.hm-hero-motion-toggle span {
	display: block;
	width: 9px;
	height: 11px;
	border-right: 3px solid currentColor;
	border-left: 3px solid currentColor;
}

.hm-hero-motion-toggle.is-paused span {
	width: 0;
	height: 0;
	margin-left: 2px;
	border-top: 6px solid transparent;
	border-right: 0;
	border-bottom: 6px solid transparent;
	border-left: 9px solid currentColor;
}

body.hm-header-2026.isFrontPage #section2024 {
	padding-top: 0 !important;
}

body.hm-header-2026:not(.isFrontPage) #section,
body.hm-header-2026:not(.isFrontPage) #section2024 {
	margin-top: 0;
}

body.hm-header-2026 .hm-home-intro-copy--after-hero {
	max-width: 900px;
	margin: 0 auto clamp(46px, 7vw, 92px);
	padding-top: clamp(38px, 6vw, 74px);
}

@media screen and (max-width: 1380px) {
	.hm-header-bar__inner {
		grid-template-columns: 152px minmax(0, 1fr) auto;
		gap: 22px;
	}

	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 152px;
	}

	#header .hm-primary-navigation > ul {
		gap: 0;
	}

	#header .hm-primary-navigation > ul > li > a {
		padding-right: 9px;
		padding-left: 9px;
		font-size: 10.5px;
	}

	#header .hm-nav-link-marker {
		right: 9px;
		left: 9px;
	}
}

@media screen and (max-width: 1180px) {
	body.hm-header-2026 {
		--hm-header-height: 72px;
		--hm-header-gutter: clamp(16px, 4vw, 36px);
	}

	body.hm-mobile-menu-open,
	body.hm-search-open {
		overflow: hidden;
	}

	.hm-header-bar__inner {
		grid-template-columns: 52px minmax(0, 1fr) auto;
		gap: 12px;
	}

	#header #trigger-menu-mobile.hm-menu-trigger {
		position: relative;
		z-index: 214;
		top: auto;
		left: auto;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 5px;
		width: 44px;
		height: 44px;
		padding: 0;
		border: 1px solid var(--hm-header-line);
		border-radius: 50%;
		background: rgba(255, 255, 255, .045);
		color: #fff;
		cursor: pointer;
		transform: none;
	}

	.hm-menu-trigger > span {
		display: block;
		width: 16px;
		height: 1px;
		background: currentColor;
		transition: transform 200ms ease, opacity 160ms ease;
	}

	.hm-menu-trigger.is-active > span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.hm-menu-trigger.is-active > span:nth-child(2) {
		opacity: 0;
	}

	.hm-menu-trigger.is-active > span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	#header .hm-header-logo {
		position: static;
		top: auto;
		left: auto;
		justify-self: center;
		width: 154px;
		transform: none;
	}

	#header .hm-header-logo img {
		width: 154px;
	}

	#header #search-trigger.hm-search-trigger {
		position: relative;
		top: auto;
		right: auto;
		display: inline-flex !important;
		width: 38px;
		height: 38px;
		transform: none;
	}

	#header .hm-primary-navigation {
		position: absolute;
		z-index: 212;
		top: 100%;
		bottom: auto;
		left: 0;
		display: block;
		width: min(520px, calc(100vw - 28px));
		min-width: 0;
		height: calc(100vh - var(--hm-header-height));
		height: calc(100dvh - var(--hm-header-height));
		max-height: none;
		padding: clamp(22px, 4vh, 44px) var(--hm-header-gutter) 54px;
		overflow-x: hidden;
		overflow-y: auto;
		border-right: 1px solid rgba(23, 29, 34, .1);
		background: #f8f5ee;
		box-shadow: 22px 0 70px color-mix(in srgb, var(--hm-primary, #171d22) 18%, transparent);
		opacity: 0;
		pointer-events: none;
		transform: translateX(-102%);
		visibility: hidden;
		transition: opacity 180ms ease, transform 320ms cubic-bezier(.22, .68, .22, 1), visibility 0s linear 320ms;
	}

	body.hm-has-special-banner #header .hm-primary-navigation {
		top: 100%;
		height: calc(100vh - var(--hm-header-height) - var(--hm-special-banner-height));
		height: calc(100dvh - var(--hm-header-height) - var(--hm-special-banner-height));
	}

	#header .hm-primary-navigation.open {
		max-height: none;
		opacity: 1;
		pointer-events: auto;
		transform: translateX(0);
		visibility: visible;
		transition: opacity 180ms ease, transform 320ms cubic-bezier(.22, .68, .22, 1);
	}

	#header .hm-primary-navigation > ul {
		display: block;
		height: auto;
	}

	#header .hm-primary-navigation > ul > li {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 48px;
		height: auto;
		border-bottom: 1px solid rgba(23, 29, 34, .12);
	}

	#header .hm-primary-navigation > ul > li > a {
		grid-column: 1;
		justify-content: flex-start;
		min-height: 68px;
		padding: 14px 0;
		color: var(--hm-header-ink);
		font-family: "BrownStd-Regular", Arial, sans-serif;
		font-size: clamp(22px, 4vw, 31px);
		font-weight: normal;
		letter-spacing: -.025em;
		line-height: 1;
		text-align: left;
		text-transform: none;
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		min-height: 68px;
		padding: 14px 0;
		background: transparent;
		color: var(--hm-header-ink);
		font-family: "BrownStd-Regular", Arial, sans-serif;
		font-size: clamp(22px, 4vw, 31px);
		font-weight: normal;
		letter-spacing: -.025em;
		line-height: 1;
		text-align: left;
		text-transform: none;
	}

	#header .hm-primary-navigation > ul > li > a:hover,
	#header .hm-primary-navigation > ul > li > a:focus-visible,
	#header .hm-primary-navigation > ul > li > a.active,
	#header .hm-primary-navigation > ul > li.submenu-open > a {
		background: transparent;
		color: var(--hm-header-accent);
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a:hover,
	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a:focus-visible,
	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a.active,
	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li.submenu-open > a {
		background: transparent;
		color: var(--hm-header-accent);
	}

	#header .hm-nav-link-marker {
		display: none;
	}

	#header .hm-submenu-toggle {
		grid-column: 2;
		grid-row: 1;
		align-self: stretch;
		width: 48px;
		height: auto;
		margin: 0;
		color: var(--hm-header-ink);
	}

	#header .hm-submenu-toggle span::before,
	#header .hm-submenu-toggle span::after {
		top: 50%;
		width: 9px;
	}

	#header .hm-submenu-toggle span::before {
		left: 15px;
	}

	#header .hm-submenu-toggle span::after {
		right: 15px;
	}

	#header .hm-primary-navigation > ul > li > .drowndown-level {
		position: relative;
		z-index: 1;
		top: auto;
		left: auto;
		grid-column: 1 / -1;
		width: 100%;
		height: auto;
		max-height: 0;
		padding: 0;
		overflow: hidden;
		opacity: 1;
		pointer-events: none;
		transform: none;
		transition: max-height 320ms ease;
	}

	#header .hm-primary-navigation > ul > li:hover > .drowndown-level,
	#header .hm-primary-navigation > ul > li:focus-within > .drowndown-level {
		max-height: 0;
		pointer-events: none;
		transform: none;
	}

	#header .hm-primary-navigation > ul > li.submenu-open > .drowndown-level {
		max-height: 760px;
		padding-bottom: 13px;
		pointer-events: auto;
	}

	#header .hm-primary-navigation .drowndown-level > ul {
		padding: 0 0 6px 16px;
		border: 0;
		border-left: 1px solid rgba(23, 29, 34, .15);
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	#header .hm-primary-navigation .drowndown-level > ul > li > a,
	#header .hm-primary-navigation .drowndown-level > ul > li > ul > li > a {
		padding: 9px 13px;
		font-size: 15px;
	}

	#header .hm-primary-navigation .drowndown-level > ul > li > ul {
		border-left: 0;
	}

	.hm-home-hero {
		min-height: max(680px, 100svh);
	}

	.hm-home-hero__inner {
		padding-top: calc(var(--hm-header-height) + clamp(28px, 4vh, 52px));
		padding-bottom: clamp(40px, 5vh, 58px);
	}

	.hm-home-hero__statement {
		width: min(760px, 100%);
		font-size: clamp(32px, 5vw, 54px);
		line-height: .92;
	}

	.hm-home-hero__actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hm-home-hero__action {
		border-bottom: 1px solid rgba(255, 255, 255, .26);
	}

	.hm-home-hero__action:nth-child(2) {
		border-right: 0;
	}

	.hm-home-hero__action:nth-last-child(-n + 2) {
		border-bottom: 0;
	}
}

/* Hero 2026: recherche visible et palette légère des quatre actions. */
#header .hm-header-bar #search-zone.hm-search-zone {
	display: block !important;
	position: absolute;
	top: 100%;
	right: var(--hm-header-gutter);
	left: auto;
	width: min(680px, calc(100vw - (var(--hm-header-gutter) * 2)));
	min-width: 0;
	height: auto;
	max-height: 0;
	overflow: hidden;
}

body.hm-has-special-banner #header .hm-header-bar #search-zone.hm-search-zone {
	top: 100%;
}

body.hm-search-open #header .hm-header-bar #search-zone.hm-search-zone {
	height: auto;
	max-height: calc(100vh - var(--hm-header-height) - 30px);
	overflow-y: auto;
}

body.isFrontPage #header .hm-home-hero__action,
body.isFrontPage #header .hm-home-hero__action:first-child,
body.isFrontPage #header .hm-home-hero__action:last-child {
	border: 1px solid color-mix(in srgb, var(--hm-action-color) 72%, #fff);
	background: transparent;
	box-shadow: none;
	font-family: "BrownStd-Bold", Arial, sans-serif;
}

body.isFrontPage #header .hm-home-hero__action:hover,
body.isFrontPage #header .hm-home-hero__action:focus-visible {
	border-color: #fff;
	background: transparent;
	color: #fff !important;
}

body.isFrontPage #header .hm-home-hero__action i {
	color: color-mix(in srgb, var(--hm-action-color) 78%, #fff);
}

@media screen and (max-width: 680px) {
	#header .hm-header-bar #search-zone.hm-search-zone {
		right: 10px;
		left: 10px;
		width: auto;
	}
}

@media screen and (max-width: 680px) {
	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 136px;
	}

	#header .hm-header-tools {
		gap: 5px;
	}

	#header .hm-header-tools .language-switcher a,
	#header #search-trigger.hm-search-trigger {
		width: 38px;
		height: 38px;
	}

	.hm-home-hero {
		min-height: max(640px, 100svh);
	}

	.hm-home-hero__media img,
	.hm-home-hero__media video {
		object-position: 58% center;
	}

	.hm-home-hero__veil {
		background:
			linear-gradient(90deg, color-mix(in srgb, var(--hm-primary, #171d22) 50%, transparent), color-mix(in srgb, var(--hm-primary, #171d22) 26%, transparent)),
			linear-gradient(180deg, color-mix(in srgb, var(--hm-primary, #171d22) 12%, transparent), color-mix(in srgb, var(--hm-primary, #171d22) 32%, transparent) 88%, var(--hm-home-surface) 100%);
	}

	.hm-home-hero__inner {
		justify-content: flex-end;
		padding-top: calc(var(--hm-header-height) + 34px);
		padding-bottom: 24px;
	}

	.hm-home-hero__anniversary {
		margin-bottom: 13px;
		font-size: 9px;
	}

	.hm-home-hero h1 {
		max-width: 480px;
		font-size: 14px;
	}

	.hm-home-hero__statement {
		margin-top: 26px;
		font-size: clamp(28px, 8.2vw, 34px);
		line-height: .92;
	}

	.hm-home-hero__actions {
		margin-top: 24px;
	}

	.hm-home-hero__action {
		grid-template-columns: minmax(0, 1fr) 16px;
		gap: 8px;
		min-height: 82px;
		padding: 14px 11px;
		font-size: 12px;
	}

	.hm-search-zone {
		right: 10px;
		left: 10px;
		width: auto;
	}

	#header .hm-search-field input {
		height: 72px;
		padding-right: 58px;
		padding-left: 20px;
		font-size: 20px;
	}

	#header .hm-search-field > .hm-search-icon {
		right: 24px;
	}

	.hm-hero-motion-toggle {
		right: var(--hm-header-gutter);
		bottom: 16px;
		width: 34px;
		height: 34px;
	}
}

@media screen and (max-width: 390px) {
	.hm-header-bar__inner {
		grid-template-columns: 44px minmax(0, 1fr) auto;
		gap: 6px;
		padding-right: 10px;
		padding-left: 10px;
	}

	.hm-menu-trigger {
		width: 40px;
		height: 40px;
	}

	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 118px;
	}

	#header .hm-header-tools .language-switcher a,
	#header #search-trigger.hm-search-trigger {
		width: 35px;
		height: 35px;
	}

	.hm-home-hero__statement {
		font-size: 27px;
	}

	.hm-home-hero__action {
		font-size: 11px;
	}
}

@media screen and (max-width: 520px) {
	.hm-home-hero__statement > .hm-home-hero__phrase {
		align-items: flex-start;
	}

	.hm-home-hero__words {
		height: 1.9em;
	}

	.hm-home-hero__message {
		display: block;
	}

	.hm-home-hero__heritage {
		display: block;
	}

	.hm-home-hero__words b {
		width: 100%;
		line-height: .9;
		white-space: normal;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hm-header-bar,
	#header .hm-primary-navigation,
	.hm-search-zone,
	.hm-home-hero__action,
	.hm-home-hero__action i {
		transition: none !important;
	}

	.hm-home-hero__words b {
		display: none;
		animation: none;
	}

	.hm-home-hero__words b:last-child {
		display: block;
		opacity: 1;
		filter: none;
		transform: none;
	}

	.hm-home-hero__words::after {
		display: none;
		animation: none;
	}

	.hm-home-hero__heritage {
		animation: none;
	}

	.hm-home-hero__you {
		display: none;
		animation: none;
	}
}

/* Navigation institutionnelle : menu à gauche, marque centrée, actions à droite. */
.hm-header-bar__inner {
	position: relative;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	gap: 24px;
}

.hm-header-left {
	display: flex;
	grid-column: 1;
	grid-row: 1;
	align-items: center;
	justify-self: stretch;
	gap: clamp(14px, 1.6vw, 24px);
	min-width: 0;
}

.hm-header-breadcrumb-slot {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	min-width: 0;
	overflow: hidden;
}

.hm-header-breadcrumb-slot:empty {
	display: none;
}

#header #trigger-menu-mobile.hm-menu-trigger {
	position: relative;
	z-index: 214;
	top: auto;
	left: auto;
	flex: 0 0 auto;
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	justify-self: start;
	gap: 11px;
	width: auto;
	height: 42px;
	padding: 0 16px;
	border: 1px solid var(--hm-header-line);
	border-radius: 999px;
	background: rgba(255, 255, 255, .045);
	color: #fff;
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: 10.5px;
	letter-spacing: .13em;
	line-height: 1;
	text-transform: uppercase;
	transform: none;
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb {
	position: static;
	left: auto;
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	color: rgba(255, 255, 255, .68);
	background: transparent;
	border: 0;
	box-shadow: none;
	font-family: "BrownStd-Regular", sans-serif;
	font-size: 9px;
	letter-spacing: .025em;
	line-height: 1.2;
	text-transform: none;
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb ol {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: center;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 0 20px 0 0;
	overflow: hidden;
	list-style: none;
	white-space: nowrap;
	-webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 22px), transparent 100%);
	mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 22px), transparent 100%);
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb li {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	min-width: 0;
	color: rgba(255, 255, 255, .6);
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb li::before {
	display: inline-block;
	flex: 0 0 4px;
	width: 4px;
	height: 4px;
	margin-right: 6px;
	background: #fff;
	border: 1px solid #fff;
	border-radius: 50%;
	content: "";
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb li:not(:last-child)::after {
	display: inline-block;
	flex: 0 0 15px;
	width: 15px;
	height: 1px;
	margin: 0 7px;
	background: rgba(255, 255, 255, .2);
	content: "";
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb li[aria-current="page"] {
	color: #fff;
	font-family: "BrownStd-Bold", sans-serif;
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb li[aria-current="page"]::before {
	background: #fff;
	border-color: #fff;
	box-shadow: none;
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb a {
	color: rgba(255, 255, 255, .68);
	text-decoration: none;
}

#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb a:hover,
#header .hm-header-breadcrumb-slot .hm-page-base-2026__breadcrumb a:focus-visible {
	color: #fff;
}

#header #trigger-menu-mobile .hm-menu-trigger__icon {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 16px;
	height: auto;
	background: transparent;
}

#header #trigger-menu-mobile .hm-menu-trigger__label {
	width: auto;
	height: auto;
	background: transparent;
	opacity: 1;
}

#header #trigger-menu-mobile.is-active > .hm-menu-trigger__icon {
	transform: none;
}

.hm-menu-trigger__icon i {
	display: block;
	width: 16px;
	height: 1px;
	background: currentColor;
	transition: opacity 160ms ease, transform 200ms ease;
}

.hm-menu-trigger.is-active .hm-menu-trigger__icon i:nth-child(1) {
	transform: translateY(5px) rotate(45deg);
}

.hm-menu-trigger.is-active .hm-menu-trigger__icon i:nth-child(2) {
	opacity: 0;
}

.hm-menu-trigger.is-active .hm-menu-trigger__icon i:nth-child(3) {
	transform: translateY(-5px) rotate(-45deg);
}

#header .hm-header-logo {
	position: static;
	top: auto;
	left: auto;
	grid-column: 2;
	grid-row: 1;
	justify-self: center;
	width: 174px;
	transform: none;
}

#header .hm-header-logo img {
	width: 174px;
}

#header .hm-header-tools {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
}

.hm-header-donate {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 118px;
	height: 42px;
	padding: 0 18px;
	border: 1px solid var(--hm-header-accent);
	border-radius: 999px;
	background: var(--hm-header-accent);
	color: #fff !important;
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: 10.5px;
	letter-spacing: .09em;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.hm-header-donate:hover,
.hm-header-donate:focus-visible {
	border-color: #fff;
	background: #fff;
	color: var(--hm-header-ink) !important;
	transform: translateY(-1px);
}

.hm-header-donate__short {
	display: none;
}

#header .dropdown-nav.hm-primary-navigation {
	position: fixed;
	z-index: 212;
	top: 8px;
	bottom: 8px;
	left: 8px;
	display: flex;
	flex-direction: column;
	gap: clamp(22px, 3vh, 34px);
	align-self: auto;
	width: min(620px, calc(100vw - 16px));
	min-width: 0;
	height: auto;
	max-height: none;
	margin: 0;
	padding: clamp(24px, 3vw, 38px);
	overflow: hidden;
	border: 1px solid rgba(23, 29, 34, .1);
	border-radius: 36px;
	background: #f8f5ee;
	box-shadow: 22px 0 70px color-mix(in srgb, var(--hm-primary, #171d22) 18%, transparent);
	opacity: 0;
	pointer-events: none;
	transform: translateX(-102%);
	visibility: hidden;
	transition: opacity 180ms ease, transform 320ms cubic-bezier(.22, .68, .22, 1), visibility 0s linear 320ms;
}

body.hm-has-special-banner #header .dropdown-nav.hm-primary-navigation {
	top: 8px;
	bottom: 8px;
	height: auto;
}

#header .dropdown-nav.hm-primary-navigation.open {
	max-height: none;
	opacity: 1;
	pointer-events: auto;
	transform: translateX(0);
	visibility: visible;
	transition: opacity 180ms ease, transform 320ms cubic-bezier(.22, .68, .22, 1);
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level {
	display: block;
	flex: 1 1 auto;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0 5px 0 0;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 48px;
	width: 100%;
	height: auto;
	border-bottom: 1px solid color-mix(in srgb, var(--hm-primary, #171d22) 18%, transparent);
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a {
	grid-column: 1;
	justify-content: flex-start;
	min-height: 76px;
	padding: 16px 0;
	background: transparent;
	color: var(--hm-header-ink);
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: clamp(24px, 2vw, 32px);
	font-weight: normal;
	letter-spacing: -.03em;
	line-height: 1;
	text-align: left;
	text-transform: none;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a:hover,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a:focus-visible,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a.active,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li.submenu-open > a {
	background: transparent;
	color: var(--hm-header-accent);
}

#header .dropdown-nav.hm-primary-navigation .hm-nav-link-marker {
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	width: auto;
	height: auto;
	margin-left: auto;
	background: transparent;
	font-family: Arial, sans-serif;
	font-size: 20px;
	line-height: 1;
	transform: none;
}

#header .dropdown-nav.hm-primary-navigation .hm-nav-link-marker::before {
	content: "➜";
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li:not(.menu-item-has-children) > a {
	grid-column: 1 / -1;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li.menu-item-has-children > a .hm-nav-link-marker {
	display: none;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle {
	grid-column: 2;
	grid-row: 1;
	align-self: stretch;
	width: 48px;
	height: auto;
	margin: 0;
	color: var(--hm-header-ink);
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle span {
	display: block;
	font-family: Arial, sans-serif;
	font-size: 20px;
	line-height: 1;
	transition: transform 220ms ease;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle span::before {
	position: static;
	width: auto;
	height: auto;
	background: transparent;
	content: "➜";
	transform: none;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle span::after {
	display: none;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li.submenu-open > .hm-submenu-toggle span {
	transform: rotate(90deg);
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > .drowndown-level,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li:hover > .drowndown-level,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li:focus-within > .drowndown-level {
	position: relative;
	z-index: 1;
	top: auto;
	left: auto;
	grid-column: 1 / -1;
	width: 100%;
	height: auto;
	max-height: 0;
	padding: 0;
	overflow: hidden;
	opacity: 1;
	pointer-events: none;
	transform: none;
	transition: max-height 320ms ease;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li.submenu-open > .drowndown-level {
	max-height: 760px;
	padding-bottom: 13px;
	pointer-events: auto;
}

#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul {
	padding: 2px 0 16px;
	border: 0;
	border-left: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul > li > a,
#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul > li > ul > li > a {
	padding: 8px 0;
	font-family: "BrownStd-Regular", Arial, sans-serif;
	font-size: 17px;
}

.hm-menu-panel__close {
	position: relative;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--hm-primary);
	color: #fff;
	cursor: pointer;
}

.hm-menu-panel__close span::before,
.hm-menu-panel__close span::after {
	position: absolute;
	top: 26px;
	left: 15px;
	width: 24px;
	height: 2px;
	background: currentColor;
	content: "";
}

.hm-menu-panel__close span::before { transform: rotate(45deg); }
.hm-menu-panel__close span::after { transform: rotate(-45deg); }

.hm-menu-panel__close:hover,
.hm-menu-panel__close:focus-visible {
	background: var(--hm-primary);
	color: #fff;
}

.hm-menu-panel__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	flex: 0 0 auto;
}

#header .hm-menu-panel__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 12px 18px;
	border: 2px solid var(--hm-primary);
	border-radius: 999px;
	font-family: "BrownStd-Bold", Arial, sans-serif;
	font-size: 15px;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
}

#header .hm-menu-panel__action--outline {
	background: transparent;
	color: var(--hm-primary) !important;
}

#header .hm-menu-panel__action--accent {
	border-color: var(--hm-accent);
	background: var(--hm-accent);
	color: #fff !important;
}

#header .hm-menu-panel__action:hover,
#header .hm-menu-panel__action:focus-visible {
	border-color: var(--hm-primary);
	background: var(--hm-primary);
	color: #fff !important;
}

@media screen and (max-width: 760px) {
	.hm-header-bar__inner {
		gap: 8px;
	}

	#header #trigger-menu-mobile.hm-menu-trigger {
		width: 40px;
		height: 40px;
		padding: 0;
		border-radius: 50%;
	}

	#header .hm-menu-trigger .hm-menu-trigger__label {
		display: none;
	}

	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 126px;
	}

	.hm-header-donate {
		min-width: 58px;
		height: 38px;
		padding: 0 11px;
		font-size: 9.5px;
	}

	.hm-header-donate__full {
		display: none;
	}

	.hm-header-donate__short {
		display: inline;
	}

	#header .dropdown-nav.hm-primary-navigation,
	body.hm-has-special-banner #header .dropdown-nav.hm-primary-navigation {
		top: 6px;
		bottom: 6px;
		left: 6px;
		width: calc(100vw - 12px);
		padding: 18px;
		gap: 18px;
		border-radius: 28px;
	}

	.hm-menu-panel__close {
		width: 48px;
		height: 48px;
	}

	.hm-menu-panel__close span::before,
	.hm-menu-panel__close span::after {
		top: 23px;
		left: 13px;
		width: 22px;
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a {
		min-height: 62px;
		padding: 12px 0;
		font-size: clamp(21px, 7vw, 28px);
	}

	.hm-menu-panel__actions {
		gap: 8px;
	}

	#header .hm-menu-panel__action {
		min-height: 48px;
		padding: 10px 12px;
		border-width: 1px;
		font-size: 12.5px;
	}
}

@media screen and (max-width: 430px) {
	body.hm-header-2026 {
		--hm-header-gutter: 10px;
	}

	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 100px;
	}

	#header .hm-header-tools {
		gap: 4px;
	}

	.hm-header-donate {
		min-width: 44px;
		height: 35px;
		padding: 0 8px;
	}
}

/* Hero 2026: raccord propre avec le contenu et actions arrondies. */
body.hm-uses-hero-header:not(.hm-header-past-hero):not(.hm-mobile-menu-open):not(.hm-search-open) .hm-header-bar {
	border-color: transparent;
	background: transparent;
	box-shadow: none;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

body.isFrontPage #section2024 {
	margin-top: -1px;
	background: var(--hm-grey1, #f4f1e9);
}

body.isFrontPage #section2024 .wpr-block2024 {
	background-color: var(--hm-grey1, #f4f1e9) !important;
}

.hm-home-hero__actions {
	gap: 10px;
	border: 0;
	overflow: visible;
}

.hm-home-hero__action,
.hm-home-hero__action:last-child {
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 15px;
}

@media screen and (max-width: 1180px) {
	.hm-home-hero__actions {
		gap: 8px;
	}

	.hm-home-hero__action,
	.hm-home-hero__action:nth-child(2),
	.hm-home-hero__action:nth-last-child(-n + 2),
	.hm-home-hero__action:last-child {
		border: 1px solid rgba(255, 255, 255, .3);
		border-radius: 13px;
	}
}

/* Header et hero 2026 — composition mobile dédiée. */
@media screen and (max-width: 760px) {
	body.hm-header-2026 {
		--hm-header-height: 64px;
		--hm-header-gutter: 12px;
	}

	body.hm-has-special-banner {
		--hm-special-banner-height: 96px;
	}

	body.hm-has-special-banner #header.hm-site-header {
		top: 0;
	}

	body.hm-header-2026.isFrontPage #section2024,
	body.hm-header-2026.hm-has-special-banner.isFrontPage #section2024 {
		padding-top: 0 !important;
	}

	#header .hm-header-bar {
		height: var(--hm-header-height);
	}

	body.hm-uses-hero-header:not(.hm-search-open) #header .hm-header-bar,
	body.hm-uses-hero-header.hm-mobile-menu-open #header .hm-header-bar {
		border-color: transparent;
		background: transparent;
		box-shadow: none;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	#header .hm-header-bar__inner {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 8px;
		padding: 0 var(--hm-header-gutter);
	}

	#header #trigger-menu-mobile.hm-menu-trigger {
		flex: 0 0 40px;
		width: 40px;
		height: 40px;
		padding: 0;
		border-color: rgba(255, 255, 255, .38);
		background: color-mix(in srgb, var(--hm-primary) 12%, transparent);
	}

	#header #trigger-menu-mobile .hm-menu-trigger__label {
		display: none;
	}

	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 118px;
	}

	#header .hm-header-logo {
		position: absolute;
		top: 50%;
		left: 50%;
		height: auto;
		transform: translate(-50%, -50%);
	}

	#header .hm-header-tools {
		display: flex;
		flex: 0 0 auto;
		gap: 4px;
		margin-left: auto;
	}

	#header .hm-header-donate {
		display: none;
	}

	#header .hm-header-donate__full {
		display: none;
	}

	#header .hm-header-donate__short {
		display: inline;
	}

	#header .hm-header-tools .language-switcher a,
	#header #search-trigger.hm-search-trigger {
		flex: 0 0 36px;
		width: 36px;
		min-width: 36px;
		max-width: 36px;
		height: 36px;
		min-height: 36px;
		max-height: 36px;
		aspect-ratio: 1;
		box-sizing: border-box;
		border-radius: 50%;
	}

	#header .hm-header-tools .language-switcher a {
		border-color: transparent;
		background: transparent;
		font-size: 9.5px;
	}

	#header #search-trigger.hm-search-trigger {
		border-color: rgba(255, 255, 255, .38);
		background: color-mix(in srgb, var(--hm-primary) 12%, transparent);
	}

	#header .hm-search-icon {
		width: 13px;
		height: 13px;
	}

	#header .hm-header-bar #search-zone.hm-search-zone {
		top: calc(100% + 6px);
		right: 12px;
		left: 12px;
		width: auto;
		border-radius: 16px;
	}

	#header .hm-search-field input {
		height: 62px;
		padding-right: 52px;
		padding-left: 18px;
		font-size: 18px;
	}

	#header .hm-search-field > .hm-search-icon {
		right: 22px;
	}

	#header .dropdown-nav.hm-primary-navigation,
	body.hm-has-special-banner #header .dropdown-nav.hm-primary-navigation {
		top: 6px;
		right: 6px;
		bottom: 6px;
		left: 6px;
		width: auto;
		padding: 15px;
		gap: 12px;
		border-radius: 22px;
	}

	.hm-menu-panel__close {
		width: 44px;
		height: 44px;
	}

	.hm-menu-panel__close span::before,
	.hm-menu-panel__close span::after {
		top: 21px;
		left: 12px;
		width: 20px;
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li {
		grid-template-columns: minmax(0, 1fr) 44px;
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level {
		padding-right: 0;
		scrollbar-width: none;
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level::-webkit-scrollbar {
		display: none;
		width: 0;
		height: 0;
	}

	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a {
		min-height: 54px;
		padding: 10px 0;
		font-size: clamp(19px, 5.9vw, 24px);
		line-height: 1.05;
	}

	#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle {
		width: 44px;
	}

	#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul {
		padding-bottom: 12px;
	}

	#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul > li > a,
	#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul > li > ul > li > a {
		padding: 7px 0;
		font-size: 15px;
		line-height: 1.25;
	}

	.hm-menu-panel__actions {
		gap: 7px;
	}

	#header .hm-menu-panel__action {
		min-height: 46px;
		padding: 9px 10px;
		font-size: 11.5px;
	}

	.hm-home-hero {
		min-height: max(640px, 100svh);
	}

	.hm-home-hero__media img,
	.hm-home-hero__media video {
		object-position: 62% center;
		transform: scale(1.025);
	}

	.hm-home-hero__veil {
		background:
			linear-gradient(90deg, color-mix(in srgb, var(--hm-primary, #171d22) 48%, transparent), color-mix(in srgb, var(--hm-primary, #171d22) 16%, transparent)),
			linear-gradient(180deg, color-mix(in srgb, var(--hm-primary, #171d22) 8%, transparent) 0%, color-mix(in srgb, var(--hm-primary, #171d22) 16%, transparent) 48%, color-mix(in srgb, var(--hm-primary, #171d22) 42%, transparent) 88%, var(--hm-home-surface) 100%);
	}

	.hm-home-hero__inner {
		justify-content: flex-end;
		padding: calc(var(--hm-header-height) + 24px) 14px clamp(36px, 5svh, 48px);
	}

	body.hm-has-special-banner .hm-home-hero__inner {
		padding-top: calc(var(--hm-header-height) + var(--hm-special-banner-height) + 20px);
	}

	.hm-home-hero__anniversary {
		max-width: 100%;
		margin-bottom: 11px;
		padding: 7px 10px 6px;
		font-size: 9px;
		letter-spacing: .12em;
		white-space: nowrap;
	}

	.hm-home-hero h1 {
		max-width: 350px;
		font-size: clamp(13px, 3.5vw, 15px);
		line-height: 1.35;
	}

	.hm-home-hero__statement {
		width: 100%;
		margin-top: 18px;
		row-gap: .13em;
		font-size: clamp(29px, 8.5vw, 36px);
		letter-spacing: -.04em;
		line-height: .9;
		text-align: center;
	}

	.hm-home-hero__statement > .hm-home-hero__city {
		width: 100%;
		text-align: center;
	}

	.hm-home-hero__statement > .hm-home-hero__phrase {
		display: grid;
		grid-template-columns: max-content max-content;
		align-items: start;
		justify-content: center;
		gap: 0 .18em;
		width: 100%;
		min-height: 1.82em;
	}

	.hm-home-hero__phrase > em {
		grid-column: 1;
		grid-row: 1;
	}

	.hm-home-hero__message {
		position: relative;
		grid-column: 2;
		grid-row: 1;
		display: grid;
		grid-template-columns: max-content;
		gap: 0;
		justify-items: center;
		text-align: center;
		overflow: visible;
	}

	.hm-home-hero__heritage {
		display: block;
		width: 100%;
		line-height: .9;
		white-space: nowrap;
	}

	.hm-home-hero__words {
		display: block;
		width: 100%;
		height: .94em;
		margin-top: .02em;
		line-height: .9;
	}

	.hm-home-hero__words b {
		width: 100%;
		font-size: .88em;
		line-height: .94;
		white-space: nowrap;
	}

	.hm-home-hero__you {
		right: 0;
		width: 100%;
		line-height: .9;
		text-align: center;
	}

	.hm-home-hero__actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-top: 20px;
	}

	body.isFrontPage #header .hm-home-hero__action,
	body.isFrontPage #header .hm-home-hero__action:first-child,
	body.isFrontPage #header .hm-home-hero__action:last-child {
		grid-template-columns: minmax(0, 1fr) 20px;
		gap: 7px;
		min-height: 60px;
		padding: 11px 11px 10px;
		border-width: 1px;
		border-radius: 13px;
		font-size: 11.5px;
		line-height: 1.15;
	}

	.hm-home-hero__action i {
		align-self: start;
		font-size: 20px;
	}

	.hm-hero-motion-toggle {
		top: calc(var(--hm-header-height) + 12px);
		right: 14px;
		bottom: auto;
		width: 34px;
		height: 34px;
	}

	body.hm-has-special-banner .hm-hero-motion-toggle {
		top: calc(var(--hm-header-height) + var(--hm-special-banner-height) + 12px);
	}
}

@media screen and (max-width: 390px) {
	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 108px;
	}

	#header .hm-header-donate {
		min-width: 42px;
		padding-right: 7px;
		padding-left: 7px;
	}

	#header .hm-header-tools .language-switcher a,
	#header #search-trigger.hm-search-trigger {
		flex-basis: 34px;
		width: 34px;
		min-width: 34px;
		max-width: 34px;
		height: 34px;
		min-height: 34px;
		max-height: 34px;
	}

	.hm-home-hero__statement {
		font-size: clamp(28px, 8.4vw, 33px);
	}

	body.isFrontPage #header .hm-home-hero__action,
	body.isFrontPage #header .hm-home-hero__action:first-child,
	body.isFrontPage #header .hm-home-hero__action:last-child {
		min-height: 58px;
		padding-right: 9px;
		padding-left: 9px;
		font-size: 10.8px;
	}
}

@media screen and (max-width: 350px) {
	#header .hm-header-logo,
	#header .hm-header-logo img {
		width: 102px;
	}

	#header .hm-header-tools {
		gap: 3px;
	}

	#header .hm-header-tools .language-switcher a {
		font-size: 8.5px;
	}

	#header .hm-header-tools .language-switcher a,
	#header #search-trigger.hm-search-trigger {
		flex-basis: 32px;
		width: 32px;
		min-width: 32px;
		max-width: 32px;
		height: 32px;
		min-height: 32px;
		max-height: 32px;
	}

	.hm-home-hero__anniversary {
		font-size: 8px;
		letter-spacing: .095em;
	}

	.hm-home-hero__statement {
		font-size: 28px;
	}
}

/* Accueil : les légendes des images de cartes s'ouvrent depuis un « i » compact. */
@media screen {
	.hm-home-card-caption-info,
	body.isFrontPage .hm-home-news .hm-home-story .hm-blog-image-caption.hm-home-card-caption-info,
	body.isFrontPage .hm-memento-reader__caption.hm-home-card-caption-info {
		position: absolute !important;
		top: auto !important;
		right: 6px !important;
		bottom: 6px !important;
		left: auto !important;
		z-index: 12 !important;
		display: block !important;
		width: 20px !important;
		max-width: none !important;
		min-height: 20px !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		font-size: 0 !important;
		line-height: 1 !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 50% !important;
		pointer-events: auto !important;
	}

	body.isFrontPage .hm-home-news .hm-home-story.is-press .hm-press-image-caption.hm-home-card-caption-info {
		z-index: 20 !important;
	}

	.hm-home-card-caption-info__button {
		position: relative;
		z-index: 2;
		display: grid;
		width: 18px;
		height: 18px;
		margin: 0;
		padding: 0 0 1px;
		place-items: center;
		color: #fff;
		font-family: Georgia, serif;
		font-size: 10.8px;
		font-style: italic;
		font-weight: 700;
		line-height: 1;
		background: color-mix(in srgb, var(--hm-primary) 72%, transparent);
		border: 1px solid rgba(255, 255, 255, .88);
		border-radius: 50%;
		box-shadow: none;
		opacity: .68;
		pointer-events: auto !important;
		cursor: pointer;
	}

	.hm-home-card-caption-info.is-empty .hm-home-card-caption-info__button {
		cursor: default;
	}

	.hm-home-card-caption-info__button::after {
		content: "";
		position: absolute;
		inset: -13px;
	}

	.hm-home-card-caption-info__button:hover,
	.hm-home-card-caption-info__button:focus-visible,
	.hm-home-card-caption-info.is-open .hm-home-card-caption-info__button {
		color: var(--hm-primary);
		background: #fff;
		border-color: var(--hm-primary);
		outline: 1px solid #fff;
		outline-offset: 1px;
		opacity: 1;
	}

	.hm-home-card-caption-info__tooltip {
		position: absolute;
		right: 0;
		bottom: calc(100% + 7px);
		z-index: 1;
		width: max-content;
		max-width: min(280px, calc(100vw - 36px));
		padding: 8px 10px;
		box-sizing: border-box;
		color: #fff !important;
		font-family: "BrownStd-Regular", Arial, sans-serif !important;
		font-size: 12px !important;
		font-style: normal;
		font-weight: 400 !important;
		line-height: 1.35 !important;
		text-align: left !important;
		white-space: normal;
		background: color-mix(in srgb, var(--hm-primary) 96%, #000 4%);
		border: 1px solid rgba(255, 255, 255, .7);
		border-radius: 4px;
		box-shadow: 0 5px 18px rgba(0, 0, 0, .3);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(4px);
		transition: opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
	}

	.hm-home-card-caption-info:hover .hm-home-card-caption-info__tooltip,
	.hm-home-card-caption-info:focus-within .hm-home-card-caption-info__tooltip,
	.hm-home-card-caption-info.is-open .hm-home-card-caption-info__tooltip {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}

	body.isFrontPage .hm-home-activity-media {
		position: relative;
		flex: 0 0 auto;
		width: 100%;
		min-width: 0;
	}

	body.isFrontPage .hm-home-activity-media > a {
		display: block;
		width: 100%;
		overflow: hidden;
	}

	.single-activite-2026 .banner-photo-image,
	.single-activite-2026 .single-activite-circuit-image,
	.single-activite .banner-photo {
		position: relative;
	}

	@media (min-width: 1024px) {
		body.isFrontPage .hm-homepage-2026 .hm-home-events .hm-activites-accueil > .hm-activite-item:only-child > .hm-home-activity-media {
			display: flex;
			align-self: center;
			align-items: center;
			justify-content: center;
			width: calc(100% - 36px);
			max-width: 760px;
			min-width: 0;
			min-height: 0;
			max-height: 480px;
			margin: 18px auto;
			overflow: hidden;
			background: color-mix(in srgb, var(--home-activity) 18%, #fff);
			border-radius: 9px;
			box-shadow: 0 8px 20px color-mix(in srgb, var(--hm-primary) 15%, transparent);
		}

		body.isFrontPage .hm-homepage-2026 .hm-home-events .hm-activites-accueil > .hm-activite-item:only-child > .hm-home-activity-media > a {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 100%;
		}

		body.isFrontPage .hm-homepage-2026 .hm-home-events .hm-activites-accueil > .hm-activite-item:only-child > .hm-home-activity-media img {
			position: static;
			display: block !important;
			width: 100% !important;
			max-width: 100% !important;
			height: auto !important;
			max-height: 480px !important;
			margin: 0 !important;
			object-fit: contain !important;
			transform: none;
		}
	}

	@media (max-width: 600px) {
		body.isFrontPage .hm-home-activity-media,
		body.isFrontPage .hm-home-activity-media > a {
			width: 100%;
		}

		.hm-home-card-caption-info,
		body.isFrontPage .hm-home-news .hm-home-story .hm-blog-image-caption.hm-home-card-caption-info,
		body.isFrontPage .hm-memento-reader__caption.hm-home-card-caption-info {
			right: 6px !important;
			bottom: 6px !important;
		}

		.hm-home-card-caption-info__tooltip {
			font-size: 11.5px !important;
		}
	}
}

@media print {
	.hm-home-card-caption-info {
		position: static !important;
		display: block !important;
		width: auto !important;
		max-width: none !important;
		min-height: 0 !important;
		margin: 3pt 0 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.hm-home-card-caption-info__button {
		display: none !important;
	}

	.hm-home-card-caption-info__tooltip {
		position: static !important;
		display: block !important;
		width: auto !important;
		max-width: none !important;
		padding: 0 !important;
		color: #111 !important;
		font-size: 8pt !important;
		line-height: 1.25 !important;
		text-align: left !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}
}

/* Menu déroulé : défilement conservé, barre visuelle supprimée partout. */
body.hm-mobile-menu-open {
	overflow: hidden !important;
}

#header .dropdown-nav.hm-primary-navigation,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level,
#header .dropdown-nav.hm-primary-navigation .drowndown-level,
#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul {
	scrollbar-width: none !important;
}

#header .dropdown-nav.hm-primary-navigation::-webkit-scrollbar,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level::-webkit-scrollbar,
#header .dropdown-nav.hm-primary-navigation .drowndown-level::-webkit-scrollbar,
#header .dropdown-nav.hm-primary-navigation .drowndown-level > ul::-webkit-scrollbar {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
}

/* Alignement unique des flèches du menu, avec ou sans sous-menu. */
/*
 * Les anciens styles de contenu utilisent `.single-activite li::before` et
 * `.single-activite a::after`. WordPress applique aussi `single-activite` au
 * body d'une fiche activité : sans ce garde-fou, ces flèches débordent dans
 * tout l'en-tête (menu, logo et boutons).
 */
body.hm-header-2026 #header li::before,
body.hm-header-2026 #header a::after {
	display: none !important;
	content: none !important;
	margin: 0 !important;
}

/*
 * Le même sélecteur historique `.single-activite` atteint le pied de page
 * puisqu'il est aussi présent sur le body des fiches. Les listes et les liens
 * du footer ne doivent pas hériter des flèches décoratives du contenu.
 */
body.single-activite #footer li::before,
body.single-activite #footer a::after {
	display: none !important;
	content: none !important;
	margin: 0 !important;
}

/* Les liens des fiches activités modernes n'affichent pas de flèche ajoutée. */
body.single-activite .single-activite-2026 a::after {
	display: none !important;
	content: none !important;
	margin: 0 !important;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li {
	position: relative;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li:not(.menu-item-has-children) > a {
	position: relative;
	grid-column: 1 / -1;
	padding-right: 48px;
}

#header .dropdown-nav.hm-primary-navigation .hm-nav-link-marker {
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: auto !important;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: auto;
	margin: 0;
	background: transparent;
	pointer-events: none;
	transform: none !important;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle {
	position: absolute;
	z-index: 4;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	margin: 0;
	cursor: pointer;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li.menu-item-has-children > a .hm-nav-link-marker {
	display: none !important;
}

#header .dropdown-nav.hm-primary-navigation .hm-nav-link-marker::before {
	display: none !important;
	content: none !important;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle {
	border: 0;
	background: transparent;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	opacity: 1;
}

#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle span::before,
#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle span::after,
#header .dropdown-nav.hm-primary-navigation .hm-nav-link-marker::after {
	display: none !important;
	content: none !important;
}

#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a:hover .hm-nav-link-marker,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a:focus-visible .hm-nav-link-marker,
#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a.active .hm-nav-link-marker {
	transform: none !important;
}

.hm-home-hero__action:hover i,
.hm-home-hero__action:focus-visible i {
	transform: none;
}

@media screen and (max-width: 760px) {
	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li > a,
	#header .dropdown-nav.hm-primary-navigation > ul.dropdown-nav-level > li:not(.menu-item-has-children) > a {
		padding-right: 44px;
	}

	#header .dropdown-nav.hm-primary-navigation .hm-nav-link-marker,
	#header .dropdown-nav.hm-primary-navigation .hm-submenu-toggle {
		width: 44px;
	}
}

/* Raccord continu entre la vidéo du hero et la première section. */
#header.hm-site-header--hero .hm-home-hero {
	position: relative;
	z-index: 1;
}

#header.hm-site-header--hero .hm-home-hero::after {
	position: absolute;
	z-index: 0;
	right: 0;
	bottom: -1px;
	left: 0;
	height: var(--hm-hero-fade-height, clamp(300px, 30vw, 560px));
	background: linear-gradient(
		180deg,
		transparent 0%,
		color-mix(in srgb, var(--hm-home-surface) 2%, transparent) 18%,
		color-mix(in srgb, var(--hm-home-surface) 7%, transparent) 36%,
		color-mix(in srgb, var(--hm-home-surface) 16%, transparent) 52%,
		color-mix(in srgb, var(--hm-home-surface) 30%, transparent) 66%,
		color-mix(in srgb, var(--hm-home-surface) 48%, transparent) 78%,
		color-mix(in srgb, var(--hm-home-surface) 68%, transparent) 88%,
		color-mix(in srgb, var(--hm-home-surface) 86%, transparent) 95%,
		var(--hm-home-surface) 100%
	);
	content: "";
	pointer-events: none;
}

#header.hm-site-header--hero .hm-home-hero__inner {
	position: relative;
	z-index: 2;
}

body.hm-header-2026.isFrontPage #section2024 {
	position: relative;
	z-index: 0;
	margin-top: 0 !important;
	padding-top: 0 !important;
	background: var(--hm-home-surface) !important;
}

body.hm-header-2026.isFrontPage #section2024 > .wpr-block2024 {
	margin-top: 0 !important;
	background: var(--hm-home-surface) !important;
}

/* Homepage cards that previously used a white surface now use Secondary. */
body.isFrontPage .hm-home-quick .list-link-arrow > li > a,
body.isFrontPage .hm-home-quick .list-link-arrow > li > a:hover,
body.isFrontPage .hm-home-quick .list-link-arrow > li > a:focus-visible,
body.isFrontPage .hm-home-news .hm-home-story.is-blog:not(.is-newsletter),
body.isFrontPage .hm-home-news .hm-home-story.is-blog:not(.is-newsletter):hover,
body.isFrontPage .hm-home-news .hm-home-story.is-blog:not(.is-newsletter) .item-date,
body.isFrontPage .hm-home-news .hm-home-story.is-blog:not(.is-newsletter):hover .item-date,
body.isFrontPage .hm-home-news .hm-home-story.is-blog:not(.is-newsletter) .item-contenu2024,
body.isFrontPage .hm-home-news .hm-home-story.is-blog:not(.is-newsletter):hover .item-contenu2024 {
	background-color: var(--hm-secondary) !important;
	background-image: none !important;
}

body.isFrontPage .hm-memento-reader__card {
	background-color: var(--hm-secondary) !important;
}

body.isFrontPage .hm-memento-reader__body,
body.isFrontPage .hm-memento-reader__card:hover .hm-memento-reader__body {
	background: linear-gradient(
		to bottom,
		transparent 0%,
		transparent 43%,
		color-mix(in srgb, var(--hm-secondary) 80%, transparent) 56%,
		color-mix(in srgb, var(--hm-secondary) 96%, transparent) 69%,
		var(--hm-secondary) 100%
	) !important;
}

/* Keep every homepage card flat, including the coloured and photographic ones. */
body.isFrontPage .hm-home-quick .list-link-arrow > li > a,
body.isFrontPage .hm-homepage-2026 .hm-home-events .hm-activite-item,
body.isFrontPage .hm-home-news .hm-home-story,
body.isFrontPage .hm-home-jobs,
body.isFrontPage .hm-home-links a,
body.isFrontPage .hm-memento-reader__card {
	box-shadow: none !important;
}

@media screen and (max-width: 768px) {
	body.isFrontPage .hm-home-jobs {
		background: var(--hm-secondary) !important;
	}
}

/* Hero: preserve a generous strip of video below the action cards. */
#header.hm-site-header--hero .hm-home-hero__inner {
	padding-bottom: clamp(120px, 15vh, 170px);
}

body.isFrontPage #header .hm-home-hero__action,
body.isFrontPage #header .hm-home-hero__action:first-child,
body.isFrontPage #header .hm-home-hero__action:last-child {
	border-width: 2px !important;
}

@media screen and (max-width: 1180px) {
	#header.hm-site-header--hero .hm-home-hero__inner {
		padding-bottom: clamp(96px, 12vh, 130px);
	}
}

@media screen and (max-width: 760px) {
	#header.hm-site-header--hero .hm-home-hero__inner {
		padding-bottom: clamp(68px, 9svh, 88px);
	}
}

/* Header: the homepage typography is the reference on every page. */
body.hm-header-2026 #header #trigger-menu-mobile.hm-menu-trigger,
body.hm-header-2026 #header .hm-header-donate,
body.hm-header-2026 #header .hm-header-tools .language-switcher a {
	font-size: 13px;
}

body.hm-header-2026 #header #trigger-menu-mobile.hm-menu-trigger {
	letter-spacing: .1em;
}

body.hm-header-2026 #header .hm-header-donate {
	min-width: 132px;
	letter-spacing: .075em;
}

body.hm-header-2026 #header .hm-header-tools .language-switcher a {
	letter-spacing: .045em;
}

@media screen and (max-width: 760px) {
	body.hm-header-2026 #header .hm-header-tools .language-switcher a {
		font-size: 12px;
	}
}

/* Footer uses the primary institutional colour from the Customizer. */
#footer.bg-gray,
#footer {
	background-color: var(--hm-primary) !important;
}

