/* Homepage blog pagination. */
.hm-blog-load-more {
  display: block;
  margin: 30px auto 10px;
  padding: 12px 24px;
  border: 0;
  border-radius: 999px;
  background: var(--hm-accent);
  color: #fff;
  cursor: pointer;
  font-family: "BrownStd-Bold";
  font-size: 1em;
  text-transform: uppercase;
  transition: opacity 0.2s ease, background-color 0.2s ease;
}

.hm-blog-load-more:hover {
  background: var(--hm-accent2);
}

.hm-blog-load-more.is-loading {
  cursor: wait;
  opacity: 0.65;
}


/* Compact homepage news cards. */
.isFrontPage .blog-offer .hm-blog-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.isFrontPage .blog-offer .hm-blog-list .date-item,
.isFrontPage .blog-offer .hm-blog-list .date-item + .date-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 18px;
  border-left-width: 5px;
  border-bottom-width: 5px;
  border-radius: 14px;
}

.isFrontPage .blog-offer .hm-blog-list .item-date {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  margin-bottom: 12px;
  white-space: normal;
}

.isFrontPage .blog-offer .hm-blog-list .item-date > span,
.isFrontPage .blog-offer .hm-blog-list .place-max {
  display: inline-flex;
  align-items: center;
  width: auto;
  height: auto;
  min-height: 24px;
  margin: 0;
  padding: 4px 9px;
  font-size: 0.78rem;
  line-height: 1.15;
  border-radius: 999px;
}

.isFrontPage .blog-offer .hm-blog-list .place-max p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
}

.isFrontPage .blog-offer .hm-blog-list .item-contenu,
.isFrontPage .blog-offer .hm-blog-list .item-contenu2024 {
  display: flex;
  flex: 1;
  flex-direction: column;
  width: 100%;
  padding: 0;
}

.isFrontPage .blog-offer .hm-blog-list .date-item h2 {
  margin: 0 0 10px;
  font-size: 1.25rem;
  line-height: 1.15;
  text-transform: none;
}

.isFrontPage .blog-offer .hm-blog-list .date-item h3 {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 10px;
  font-size: 0.95rem;
  line-height: 1.3;
  text-transform: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.isFrontPage .blog-offer .hm-blog-list .item-contenu2024 > hr {
  display: none;
}

.isFrontPage .blog-offer .hm-blog-list .hm-blog-image {
  order: -1;
  margin: 0 0 14px;
}

.isFrontPage .blog-offer .hm-blog-list .hm-blog-image img {
  display: block;
  width: 100%;
  height: 150px;
  margin: 0;
  object-fit: cover;
  border-radius: 9px;
}

.isFrontPage .blog-offer .hm-blog-list .hm-blog-excerpt {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 12px;
  font-size: 0.95rem;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.isFrontPage .blog-offer .hm-blog-list .lien-activite {
  margin: auto 0 0;
}

@media screen and (max-width: 768px) {
  .isFrontPage .blog-offer .hm-blog-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .isFrontPage .blog-offer .hm-blog-list .date-item,
  .isFrontPage .blog-offer .hm-blog-list .date-item + .date-item {
    padding: 14px !important;
    margin: 0 !important;
  }

  .isFrontPage .blog-offer .hm-blog-list .hm-blog-image img {
    height: 135px !important;
    margin: 0 !important;
  }

  .isFrontPage .blog-offer .hm-blog-list .hm-blog-excerpt {
    font-size: 0.95rem !important;
    line-height: 1.35 !important;
    -webkit-line-clamp: 2;
  }
}

/* Homepage 2026 - full-width editorial layout. */
.isFrontPage .hm-homepage-2026 {
  --home-line: rgba(56, 56, 56, 0.14);
  --home-soft: #f4f2ed;
  color: var(--hm-primary);
}

.isFrontPage .hm-homepage-2026 section { margin-top: 72px; }
.isFrontPage .hm-home-intro { max-width: 940px; padding: 52px 0 10px; }
.isFrontPage .hm-home-kicker,
.isFrontPage .hm-home-eyebrow {
  margin: 0 0 10px;
  color: var(--hm-accent);
  font-family: "BrownStd-Bold";
  font-size: 1rem;
  letter-spacing: .12em;
  line-height: 1.2;
  text-transform: uppercase;
}
.isFrontPage .hm-home-intro h1 {
  max-width: 900px;
  margin: 0;
  color: var(--hm-primary);
  font-family: "Cooper", serif;
  font-size: clamp(2.4rem, 3.4vw, 3.6rem);
  font-weight: normal;
  letter-spacing: -.035em;
  line-height: .98;
  text-align: left;
}
.isFrontPage .hm-home-intro-copy {
  max-width: 720px;
  margin-top: 24px;
  color: var(--hm-grey2);
  font-size: 1.15rem;
  line-height: 1.55;
}
.isFrontPage .hm-home-intro-copy > :last-child { margin-bottom: 0; }
.isFrontPage .hm-home-section-heading {
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--home-line);
}
.isFrontPage .hm-home-section-heading h2,
.isFrontPage .hm-home-events .sidebar-title h2,
.isFrontPage .hm-home-jobs h2 {
  margin: 0;
  color: var(--hm-primary);
  font-family: "BrownStd-Bold";
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1.05;
  text-align: left;
  text-transform: none;
}

/* Quick actions replace the sidebar. */
.isFrontPage .hm-home-quick {
  padding: 28px;
  background: var(--home-soft);
  border-radius: 18px;
}
.isFrontPage .hm-home-quick .list-link-arrow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.isFrontPage .hm-home-quick .list-link-arrow > li { margin: 0; border: 0; }
.isFrontPage .hm-home-quick .list-link-arrow > li > a {
  display: flex;
  align-items: center;
  min-height: 66px;
  padding: 14px 42px 14px 16px;
  color: var(--hm-primary);
  background-color: #fff;
  background-position: calc(100% - 16px) center;
  border: 1px solid transparent;
  border-radius: 10px;
  font-family: "BrownStd-Bold";
  font-size: .95rem;
  line-height: 1.25;
  transition: border-color .2s ease, transform .2s ease;
}
.isFrontPage .hm-home-quick .list-link-arrow > li > a:hover {
  border-color: var(--hm-accent2);
  transform: translateY(-2px);
}

/* Events are the first editorial priority. */
.isFrontPage .hm-home-events { margin-top: 78px; }
.isFrontPage .hm-home-events .sidebar-title {
  margin: 0 0 24px;
  padding: 0 0 16px;
  text-align: left;
  border-bottom: 1px solid var(--home-line);
}
.isFrontPage .hm-home-events .sidebar-title hr { display: none; }
.isFrontPage .hm-home-events .hm-activites-accueil {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin: 0;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0 !important;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid var(--home-line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  transform: none;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  background: #fff !important;
  border-color: var(--hm-accent2) !important;
  transform: translateY(-3px);
}
.isFrontPage .hm-homepage-2026 .hm-activite-item > a { display: block; overflow: hidden; }
.isFrontPage .hm-homepage-2026 .hm-activite-item img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  transition: transform .35s ease;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover img { transform: scale(1.025); }
.isFrontPage .hm-homepage-2026 .hm-activite-contenu { padding: 18px; }
.isFrontPage .hm-homepage-2026 .hm-activite-meta { margin-bottom: 12px; }
.isFrontPage .hm-homepage-2026 .hm-activite-type,
.isFrontPage .hm-homepage-2026 .hm-activite-date {
  padding: 5px 9px;
  color: var(--hm-primary);
  background: var(--home-soft);
  font-size: .75rem;
}
.isFrontPage .hm-homepage-2026 .hm-activite-titre,
.isFrontPage .hm-homepage-2026 .hm-activite-titre a {
  margin: 0;
  color: var(--hm-primary);
  font-size: 1.25rem;
  line-height: 1.2;
}

/* Mixed blog and press-review stories. */
.isFrontPage .hm-home-news { margin-top: 86px; }
.isFrontPage .hm-home-news .hm-blog-list {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}
.isFrontPage .hm-home-news .hm-home-story,
.isFrontPage .hm-home-news .hm-home-story + .hm-home-story {
  grid-column: span 3;
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--home-line);
  border-radius: 14px;
  box-shadow: none;
  transform: none;
}
.isFrontPage .hm-home-news .hm-home-story:first-child {
  grid-column: span 6;
  grid-row: span 2;
}
.isFrontPage .hm-home-news .hm-home-story:nth-child(n + 6) { grid-column: span 4; }
.isFrontPage .hm-home-news .hm-home-story:hover {
  border-color: var(--hm-accent2);
  transform: translateY(-3px);
}
.isFrontPage .hm-home-news .hm-home-story .item-date {
  order: 2;
  display: flex;
  gap: 7px;
  width: auto;
  margin: 0;
  padding: 14px 16px 0;
}
.isFrontPage .hm-home-news .hm-home-story .item-date > span,
.isFrontPage .hm-home-news .hm-home-story .place-max {
  min-height: 22px;
  padding: 4px 8px;
  color: var(--hm-primary);
  background: var(--home-soft);
  border: 0;
  border-radius: 999px;
  font-size: .68rem;
}
.isFrontPage .hm-home-news .hm-home-story .place-max p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
}
.isFrontPage .hm-home-news .hm-home-story .item-contenu2024 {
  display: flex;
  flex: 1;
  flex-direction: column;
  width: 100%;
  padding: 14px 16px 18px;
}
.isFrontPage .hm-home-news .hm-home-story .hm-blog-image {
  order: -1;
  margin: -14px -16px 14px;
}
.isFrontPage .hm-home-news .hm-home-story .hm-blog-image img {
  width: 100%;
  height: 150px;
  margin: 0;
  object-fit: cover;
  border-radius: 0;
}
.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-image img { height: 330px; }
.isFrontPage .hm-home-news .hm-home-story h2 {
  margin: 0 0 8px;
  font-family: "BrownStd-Bold";
  font-size: 1.08rem;
  line-height: 1.18;
  text-transform: none;
}
.isFrontPage .hm-home-news .hm-home-story:first-child h2 {
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1.05;
}
.isFrontPage .hm-home-news .hm-home-story h2 a { color: var(--hm-primary); }
.isFrontPage .hm-home-news .hm-home-story h3,
.isFrontPage .hm-home-news .hm-home-story hr { display: none; }
.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  display: none;
  margin: 0 0 14px;
  color: var(--hm-grey2);
  font-size: .95rem;
  line-height: 1.45;
}
.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.isFrontPage .hm-home-news .hm-home-story .lien-activite {
  margin: auto 0 0;
  padding-top: 8px;
}
.isFrontPage .hm-home-news .hm-home-story .lien-activite a {
  color: var(--hm-accent);
  font-family: "BrownStd-Bold";
  font-size: .78rem;
  text-transform: uppercase;
}
.isFrontPage .hm-home-news .hm-home-story.is-press .place-max {
  color: #fff;
  background: var(--hm-accent);
}
.isFrontPage .hm-home-news .hm-blog-load-more {
  margin-top: 30px;
  color: var(--hm-primary);
  background: transparent;
  border: 1px solid var(--hm-primary);
}
.isFrontPage .hm-home-news .hm-blog-load-more:hover {
  color: #fff;
  background: var(--hm-primary);
}

/* Secondary information stays compact. */
.isFrontPage .hm-home-jobs {
  display: grid;
  grid-template-columns: minmax(220px, .35fr) 1fr;
  gap: 14px 42px;
  padding: 30px;
  background: var(--home-soft);
  border-radius: 16px;
}
.isFrontPage .hm-home-jobs .hm-home-eyebrow { grid-column: 1; margin-bottom: 0; }
.isFrontPage .hm-home-jobs h2 { grid-column: 1; }
.isFrontPage .hm-home-jobs ul {
  grid-column: 2;
  grid-row: 1 / span 2;
  margin: 0;
  padding: 0;
  list-style: none;
}
.isFrontPage .hm-home-jobs li + li { border-top: 1px solid var(--home-line); }
.isFrontPage .hm-home-jobs a {
  display: block;
  padding: 12px 0;
  color: var(--hm-primary);
  font-family: "BrownStd-Bold";
}
.isFrontPage .hm-home-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
.isFrontPage .hm-home-links a {
  padding: 9px 14px;
  color: var(--hm-primary);
  border: 1px solid var(--home-line);
  border-radius: 999px;
}

@media screen and (max-width: 960px) {
  .isFrontPage .hm-home-quick .list-link-arrow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .isFrontPage .hm-home-events .hm-activites-accueil { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .isFrontPage .hm-home-events .hm-activite-item:last-child { grid-column: 1 / -1; }
  .isFrontPage .hm-home-news .hm-home-story,
  .isFrontPage .hm-home-news .hm-home-story + .hm-home-story,
  .isFrontPage .hm-home-news .hm-home-story:nth-child(n + 6) { grid-column: span 6; }
  .isFrontPage .hm-home-news .hm-home-story:first-child {
    grid-column: 1 / -1;
    grid-row: auto;
  }
}

@media screen and (max-width: 600px) {
  .isFrontPage .hm-homepage-2026 section { margin-top: 48px; }
  .isFrontPage .hm-home-intro { padding-top: 34px; }
  .isFrontPage .hm-home-intro h1 { font-size: clamp(2.2rem, 10vw, 3.2rem); }
  .isFrontPage .hm-home-quick { padding: 18px; }
  .isFrontPage .hm-home-quick .list-link-arrow,
  .isFrontPage .hm-home-events .hm-activites-accueil { grid-template-columns: 1fr; }
  .isFrontPage .hm-home-events .hm-activite-item:last-child { grid-column: auto; }
  .isFrontPage .hm-homepage-2026 .hm-activite-item img { height: 190px; }
  .isFrontPage .hm-home-news .hm-blog-list { grid-template-columns: 1fr; gap: 16px; }
  .isFrontPage .hm-home-news .hm-home-story,
  .isFrontPage .hm-home-news .hm-home-story + .hm-home-story,
  .isFrontPage .hm-home-news .hm-home-story:first-child,
  .isFrontPage .hm-home-news .hm-home-story:nth-child(n + 6) { grid-column: 1; }
  .isFrontPage .hm-home-news .hm-home-story:first-child h2 { font-size: 1.5rem; }
  .isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-image img,
  .isFrontPage .hm-home-news .hm-home-story .hm-blog-image img { height: 190px !important; }
  .isFrontPage .hm-home-jobs { display: block; padding: 22px; }
  .isFrontPage .hm-home-jobs ul { margin-top: 18px; }
}

/* Homepage 2026 refinements: denser rhythm and original theme accents. */
.isFrontPage .hm-homepage-2026 {
  --home-soft: color-mix(in srgb, var(--hm-accent2) 10%, #fff);
}

.isFrontPage .hm-homepage-2026 section { margin-top: 44px; }
.isFrontPage .hm-home-section-heading { margin-bottom: 18px; padding-bottom: 12px; }
.isFrontPage .hm-home-events { margin-top: 52px; }
.isFrontPage .hm-home-news { margin-top: 56px; }
.isFrontPage .hm-home-jobs { margin-top: 48px; }

.isFrontPage .hm-home-quick {
  padding: 24px;
  background: color-mix(in srgb, var(--hm-accent2) 13%, #fff);
  border-top: 4px solid var(--hm-accent2);
}
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(1) > a { border-top: 3px solid var(--hm-accent4); }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(2) > a { border-top: 3px solid var(--hm-accent2); }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(3) > a { border-top: 3px solid var(--hm-accent3); }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(4) > a { border-top: 3px solid var(--hm-accent5); }

.isFrontPage .hm-home-events .hm-activites-accueil {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 18px;
}
.isFrontPage .hm-home-events .hm-activite-item,
.isFrontPage .hm-home-events .hm-activite-item:last-child {
  grid-column: auto !important;
  border-top: 5px solid var(--hm-accent2) !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-titre,
.isFrontPage .hm-homepage-2026 .hm-activite-titre a {
  display: block;
  color: var(--hm-primary) !important;
  font-family: "BrownStd-Bold";
  font-size: 1.3rem !important;
  line-height: 1.2 !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-type {
  color: #fff;
  background: var(--hm-primary);
}
.isFrontPage .hm-homepage-2026 .hm-activite-date {
  color: var(--hm-primary);
  background: color-mix(in srgb, var(--hm-accent2) 28%, #fff);
}

.isFrontPage .hm-home-news .hm-home-story {
  border-top: 4px solid var(--hm-accent2);
}
.isFrontPage .hm-home-news .hm-home-story.is-press {
  border-top-color: var(--hm-accent);
}
.isFrontPage .hm-home-news .hm-home-story:first-child {
  background: color-mix(in srgb, var(--hm-accent2) 7%, #fff);
}
.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 12px;
  color: var(--hm-grey2);
  font-size: .88rem;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: 1rem;
  -webkit-line-clamp: 4;
}

.isFrontPage .hm-home-jobs {
  background: color-mix(in srgb, var(--hm-accent3) 8%, #fff);
  border-left: 5px solid var(--hm-accent3);
}

@media screen and (max-width: 600px) {
  .isFrontPage .hm-homepage-2026 section { margin-top: 36px; }
  .isFrontPage .hm-home-events,
  .isFrontPage .hm-home-news,
  .isFrontPage .hm-home-jobs { margin-top: 40px; }
  .isFrontPage .hm-home-quick { padding: 16px; }
}

/* Homepage 2026: lighter quick access and stronger card color. */
.isFrontPage .hm-home-quick {
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.isFrontPage .hm-home-quick .hm-home-section-heading {
  display: flex;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 8px;
  padding-bottom: 10px;
}
.isFrontPage .hm-home-quick .hm-home-eyebrow { margin: 0; }
.isFrontPage .hm-home-quick .hm-home-section-heading h2 {
  font-size: 1.35rem;
}
.isFrontPage .hm-home-quick .list-link-arrow {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-bottom: 1px solid var(--home-line);
}
.isFrontPage .hm-home-quick .list-link-arrow > li {
  flex: 1 1 220px;
}
.isFrontPage .hm-home-quick .list-link-arrow > li > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(1) > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(2) > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(3) > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(4) > a {
  min-height: 68px;
  padding: 16px 44px 16px 18px;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  font-size: 1.05rem;
  line-height: 1.3;
}
.isFrontPage .hm-home-quick .list-link-arrow > li + li > a {
  border-left: 1px solid var(--home-line);
}
.isFrontPage .hm-home-quick .list-link-arrow > li > a:hover {
  color: #fff;
  background-color: var(--hm-primary);
  transform: none;
}

.isFrontPage .hm-homepage-2026 .hm-activite-item {
  background: color-mix(in srgb, var(--hm-accent2) 16%, #fff) !important;
  border: 0 !important;
  border-top: 11px solid var(--hm-accent2) !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n) {
  background: color-mix(in srgb, var(--hm-accent5) 11%, #fff) !important;
  border-top-color: var(--hm-accent5) !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n) {
  background: color-mix(in srgb, var(--hm-accent3) 11%, #fff) !important;
  border-top-color: var(--hm-accent3) !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  background: color-mix(in srgb, var(--hm-accent2) 24%, #fff) !important;
  border-top-color: var(--hm-primary) !important;
}

.isFrontPage .hm-home-news .hm-home-story {
  background: color-mix(in srgb, var(--hm-accent2) 12%, #fff);
  border: 0;
  border-top: 11px solid var(--hm-accent2);
}
.isFrontPage .hm-home-news .hm-home-story.is-press {
  background: color-mix(in srgb, var(--hm-accent) 10%, #fff);
  border-top-color: var(--hm-accent);
}
.isFrontPage .hm-home-news .hm-home-story:first-child {
  background: color-mix(in srgb, var(--hm-accent2) 20%, #fff);
}
.isFrontPage .hm-home-news .hm-home-story:hover {
  border-top-color: var(--hm-primary);
}
.isFrontPage .hm-home-news .hm-home-story .item-date > span {
  background: #fff;
}
.isFrontPage .hm-home-news .hm-home-story.is-blog .place-max {
  color: #fff;
  background: var(--hm-accent2);
}

@media screen and (max-width: 600px) {
  .isFrontPage .hm-home-quick .hm-home-section-heading {
    display: block;
  }
  .isFrontPage .hm-home-quick .hm-home-eyebrow { margin-bottom: 5px; }
  .isFrontPage .hm-home-quick .list-link-arrow { display: block; }
  .isFrontPage .hm-home-quick .list-link-arrow > li + li > a {
    border-top: 1px solid var(--home-line);
    border-left: 0;
  }
}


/* Balanced metadata labels on homepage cards. */
.isFrontPage .hm-homepage-2026 .hm-activite-type,
.isFrontPage .hm-homepage-2026 .hm-activite-date,
.isFrontPage .hm-home-news .hm-home-story .item-date > span,
.isFrontPage .hm-home-news .hm-home-story .place-max {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 11px;
  font-family: "BrownStd-Bold";
  font-size: .86rem;
  line-height: 1.15;
}

.isFrontPage .hm-homepage-2026 .hm-activite-meta,
.isFrontPage .hm-home-news .hm-home-story .item-date {
  gap: 9px;
}


/* Show complete event images without cropping. */
.isFrontPage .hm-homepage-2026 .hm-activite-item img,
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover img {
  display: block;
  width: 100%;
  height: auto !important;
  max-height: none;
  object-fit: contain;
}


/* Homepage content color system. */
.isFrontPage .hm-homepage-2026 {
  --home-activity: var(--hm-accent);
  --home-news: var(--hm-accent2);
  --home-press: var(--hm-primary);
}

/* Activities: orange. */
.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n) {
  background: color-mix(in srgb, var(--home-activity) 14%, #fff) !important;
  border-top-color: var(--home-activity) !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  background: color-mix(in srgb, var(--home-activity) 22%, #fff) !important;
  border-top-color: var(--home-activity) !important;
}
.isFrontPage .hm-homepage-2026 .hm-activite-type {
  color: #fff;
  background: var(--home-activity);
}

/* Blog news: yellow. */
.isFrontPage .hm-home-news .hm-home-story.is-blog,
.isFrontPage .hm-home-news .hm-home-story.is-blog:first-child {
  background: color-mix(in srgb, var(--home-news) 16%, #fff);
  border-top-color: var(--home-news);
}
.isFrontPage .hm-home-news .hm-home-story.is-blog .place-max {
  color: var(--hm-primary);
  background: var(--home-news);
}

/* Press review: blue. */
.isFrontPage .hm-home-news .hm-home-story.is-press,
.isFrontPage .hm-home-news .hm-home-story.is-press:first-child {
  background: color-mix(in srgb, var(--home-press) 10%, #fff);
  border-top-color: var(--home-press);
}
.isFrontPage .hm-home-news .hm-home-story.is-press .place-max {
  color: #fff;
  background: var(--home-press);
}

/* Keep the final desktop story row balanced after each AJAX batch. */
@media screen and (min-width: 961px) {
  .isFrontPage .hm-home-news .hm-blog-list:has(> .hm-home-story:last-child:nth-child(3n + 1))
    > .hm-home-story:nth-last-child(-n + 2) {
    grid-column: span 6;
  }

  .isFrontPage .hm-home-news .hm-blog-list:has(> .hm-home-story:last-child:nth-child(3n))
    > .hm-home-story:last-child {
    grid-column: 1 / -1;
  }
}

/* Every activity uses the exact same Customizer-driven orange border. */
.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  border: 0 !important;
  border-top: 11px solid var(--home-activity) !important;
}


/* Neutral card surfaces; Customizer accents carry the content type. */
.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover,
.isFrontPage .hm-home-news .hm-home-story.is-blog,
.isFrontPage .hm-home-news .hm-home-story.is-blog:first-child,
.isFrontPage .hm-home-news .hm-home-story.is-press,
.isFrontPage .hm-home-news .hm-home-story.is-press:first-child {
  background: var(--hm-background) !important;
}

.isFrontPage .hm-home-news .hm-home-story.is-press .place-max {
  color: var(--hm-primary);
  background: var(--hm-accent3);
}


/* Cards must remain pure white: no grey inherited surfaces. */
.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover,
.isFrontPage .hm-homepage-2026 .hm-activite-contenu,
.isFrontPage .hm-home-news .hm-home-story,
.isFrontPage .hm-home-news .hm-home-story:first-child,
.isFrontPage .hm-home-news .hm-home-story.is-blog,
.isFrontPage .hm-home-news .hm-home-story.is-press,
.isFrontPage .hm-home-news .hm-home-story .item-date,
.isFrontPage .hm-home-news .hm-home-story .item-contenu2024 {
  background-color: #fff !important;
  background-image: none !important;
  box-shadow: none !important;
}

.isFrontPage .hm-home-news .hm-home-story .item-date > span {
  background: #fff !important;
}


/* Stronger card borders with matching hover accent. */
.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n) {
  border: 0 !important;
  border-top: 14px solid var(--home-activity) !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  border: 0 !important;
  border-top: 14px solid var(--home-activity) !important;
  border-left: 10px solid var(--home-activity) !important;
}

.isFrontPage .hm-home-news .hm-home-story.is-blog {
  border: 0 !important;
  border-top: 14px solid var(--home-news) !important;
}
.isFrontPage .hm-home-news .hm-home-story.is-blog:hover {
  border-left: 10px solid var(--home-news) !important;
}

.isFrontPage .hm-home-news .hm-home-story.is-press {
  border: 0 !important;
  border-top: 14px solid var(--home-press) !important;
}
.isFrontPage .hm-home-news .hm-home-story.is-press:hover {
  border-left: 10px solid var(--home-press) !important;
}


/* Stable card hover: no border-induced layout shift. */
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover,
.isFrontPage .hm-home-news .hm-home-story.is-blog:hover,
.isFrontPage .hm-home-news .hm-home-story.is-press:hover {
  border-left: 0 !important;
  transform: translateY(-3px);
}


/* Category-tinted card hover: 30 percent accent. */
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover,
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover .hm-activite-contenu {
  background-color: color-mix(in srgb, var(--home-activity) 30%, #fff) !important;
}

.isFrontPage .hm-home-news .hm-home-story.is-blog:hover,
.isFrontPage .hm-home-news .hm-home-story.is-blog:hover .item-date,
.isFrontPage .hm-home-news .hm-home-story.is-blog:hover .item-contenu2024 {
  background-color: color-mix(in srgb, var(--home-news) 30%, #fff) !important;
}

.isFrontPage .hm-home-news .hm-home-story.is-press:hover,
.isFrontPage .hm-home-news .hm-home-story.is-press:hover .item-date,
.isFrontPage .hm-home-news .hm-home-story.is-press:hover .item-contenu2024 {
  background-color: color-mix(in srgb, var(--home-press) 30%, #fff) !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-contenu,
.isFrontPage .hm-home-news .hm-home-story,
.isFrontPage .hm-home-news .hm-home-story .item-date,
.isFrontPage .hm-home-news .hm-home-story .item-contenu2024 {
  transition: background-color .22s ease, transform .22s ease;
}


/* Homepage activity cards: event-poster treatment. */
.isFrontPage .hm-homepage-2026 .hm-activite-item,
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(2n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:nth-child(3n),
.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  position: relative;
  border: 0 !important;
  border-left: 11px solid var(--home-activity) !important;
  border-bottom: 11px solid var(--home-activity) !important;
  border-radius: 4px 16px 4px 16px !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-contenu {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 20px;
}

.isFrontPage .hm-homepage-2026 .hm-activite-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin: 0 0 16px;
}

.isFrontPage .hm-homepage-2026 .hm-activite-date {
  order: -1;
  width: 100%;
  min-height: 0;
  padding: 10px 13px;
  color: #fff;
  background: var(--home-activity);
  border-radius: 7px;
  font-family: "BrownStd-Bold";
  font-size: 1.05rem;
  line-height: 1.25;
  text-transform: uppercase;
}

.isFrontPage .hm-homepage-2026 .hm-activite-type {
  min-height: 0;
  padding: 5px 0;
  color: var(--home-activity);
  background: transparent;
  border: 0;
  border-bottom: 2px solid var(--home-activity);
  border-radius: 0;
  font-size: .8rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.isFrontPage .hm-homepage-2026 .hm-activite-titre,
.isFrontPage .hm-homepage-2026 .hm-activite-titre a {
  margin: 0;
  color: var(--hm-primary) !important;
  font-family: "Cooper", serif;
  font-size: 1.55rem !important;
  font-weight: normal;
  line-height: 1.12 !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-item:hover {
  transform: translateY(-3px);
}


/* Denser, longer story excerpts. */
.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  margin-bottom: 10px;
  font-size: .8rem;
  line-height: 1.3;
  -webkit-line-clamp: 9;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: .9rem;
  line-height: 1.35;
  -webkit-line-clamp: 12;
}


/* Refined card typography and longer editorial copy. */
.isFrontPage .hm-homepage-2026 .hm-activite-titre,
.isFrontPage .hm-homepage-2026 .hm-activite-titre a {
  font-size: 1.8rem !important;
  line-height: 1.08 !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-extrait {
  display: -webkit-box;
  overflow: hidden;
  margin: 12px 0 0;
  color: var(--hm-grey2);
  font-size: .78rem;
  line-height: 1.28;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  font-size: .76rem;
  line-height: 1.23;
  -webkit-line-clamp: 10;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: .84rem;
  line-height: 1.28;
  -webkit-line-clamp: 18;
}

/* Homepage quick actions: clean outlined buttons. */
.isFrontPage .hm-home-quick .list-link-arrow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  border: 0;
}
.isFrontPage .hm-home-quick .list-link-arrow > li {
  min-width: 0;
}
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(1) { --quick-accent: var(--hm-accent); }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(2) { --quick-accent: var(--hm-accent2); }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(3) { --quick-accent: var(--hm-accent3); }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(4) { --quick-accent: var(--hm-accent5); }
.isFrontPage .hm-home-quick .list-link-arrow > li > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(1) > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(2) > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(3) > a,
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(4) > a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 72px;
  padding: 15px 54px 15px 18px;
  color: var(--hm-primary);
  background: #fff;
  background-image: none;
  border: 2px solid var(--quick-accent);
  border-radius: 14px;
  font-family: "BrownStd-Bold";
  font-size: 1rem;
  line-height: 1.2;
  transition: background-color .2s ease, transform .2s ease;
}
.isFrontPage .hm-home-quick .list-link-arrow > li + li > a {
  border-left: 2px solid var(--quick-accent);
}
.isFrontPage .hm-home-quick .list-link-arrow > li > a::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: 14px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  color: var(--hm-primary);
  background: var(--quick-accent);
  border-radius: 50%;
  font-size: 1rem;
  line-height: 1;
  transform: translateY(-50%);
}
.isFrontPage .hm-home-quick .list-link-arrow > li > a:hover {
  color: var(--hm-primary);
  background: color-mix(in srgb, var(--quick-accent) 24%, #fff);
  border-color: var(--quick-accent);
  transform: translateY(-2px);
}

@media screen and (max-width: 900px) {
  .isFrontPage .hm-home-quick .list-link-arrow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 480px) {
  .isFrontPage .hm-home-quick .list-link-arrow {
    grid-template-columns: 1fr;
  }
}


/* Visible global body-type reduction for the homepage. */
.isFrontPage .hm-homepage-2026 p:not(.hm-home-kicker):not(.hm-home-eyebrow),
.isFrontPage .hm-homepage-2026 li {
  font-size: .86rem !important;
  line-height: 1.28 !important;
}

.isFrontPage .hm-home-intro-copy p,
.isFrontPage .hm-home-intro-copy li {
  font-size: .95rem !important;
  line-height: 1.38 !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-extrait {
  font-size: .74rem !important;
  line-height: 1.22 !important;
}

.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  font-size: .72rem !important;
  line-height: 1.18 !important;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: .8rem !important;
  line-height: 1.23 !important;
}

.isFrontPage .hm-home-news .hm-home-story .place-max p {
  font-size: inherit !important;
  line-height: inherit !important;
}


/* Use the available space in the featured story card. */
.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  display: block !important;
  overflow: visible !important;
  max-height: none !important;
  -webkit-box-orient: initial;
  -webkit-line-clamp: unset !important;
}


/* Justified card copy with cleaner word spacing. */
.isFrontPage .hm-homepage-2026 .hm-activite-extrait,
.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  text-align: justify !important;
  text-justify: inter-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}


/* Readability rebalance after the global type reduction. */
.isFrontPage .hm-homepage-2026 p:not(.hm-home-kicker):not(.hm-home-eyebrow),
.isFrontPage .hm-homepage-2026 li {
  font-size: .92rem !important;
  line-height: 1.34 !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-extrait {
  font-size: .84rem !important;
  line-height: 1.32 !important;
}

.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  font-size: .84rem !important;
  line-height: 1.3 !important;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: .92rem !important;
  line-height: 1.36 !important;
}

.isFrontPage .hm-home-quick .list-link-arrow > li > a {
  font-size: 1.15rem !important;
  line-height: 1.22 !important;
}


/* Final card-copy size increase. */
.isFrontPage .hm-homepage-2026 .hm-activite-extrait,
.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  font-size: .96rem !important;
  line-height: 1.38 !important;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: 1.05rem !important;
  line-height: 1.42 !important;
}

/* Icons for homepage quick-action buttons. */
.isFrontPage .hm-home-quick .list-link-arrow > li > a {
  gap: 12px;
}
.isFrontPage .hm-home-quick .list-link-arrow > li > a::before {
  flex: 0 0 auto;
  color: var(--quick-accent);
  font-family: "FontAwesome";
  font-size: 1.45rem;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(1) > a::before { content: "\f041"; }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(2) > a::before { content: "\f004"; }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(3) > a::before { content: "\f007"; }
.isFrontPage .hm-home-quick .list-link-arrow > li:nth-child(4) > a::before { content: "\f0c0"; }
.isFrontPage .hm-home-quick .list-link-arrow > li > a:hover::before {
  color: var(--hm-primary);
}


/* Explicit readable card-copy sizes; the theme root is only 13px. */
.isFrontPage .hm-homepage-2026 .hm-activite-extrait,
.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  font-size: 16px !important;
  line-height: 1.42 !important;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: 18px !important;
  line-height: 1.46 !important;
}


/* Explicit complete card type scale. */
.isFrontPage .hm-homepage-2026 .hm-activite-extrait {
  font-size: 18px !important;
  line-height: 1.42 !important;
}

.isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt {
  font-size: 14px !important;
  line-height: 1.42 !important;
}

.isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
  font-size: 17px !important;
  line-height: 1.45 !important;
}

.isFrontPage .hm-home-news .hm-home-story h2,
.isFrontPage .hm-home-news .hm-home-story h2 a {
  font-size: 22px !important;
  line-height: 1.16 !important;
}

.isFrontPage .hm-home-news .hm-home-story:first-child h2,
.isFrontPage .hm-home-news .hm-home-story:first-child h2 a {
  font-size: 38px !important;
  line-height: 1.08 !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-titre,
.isFrontPage .hm-homepage-2026 .hm-activite-titre a {
  font-size: 28px !important;
}

.isFrontPage .hm-homepage-2026 .hm-activite-type,
.isFrontPage .hm-homepage-2026 .hm-activite-date,
.isFrontPage .hm-home-news .hm-home-story .item-date > span,
.isFrontPage .hm-home-news .hm-home-story .place-max {
  font-size: 14px !important;
}

.isFrontPage .hm-home-news .hm-home-story .lien-activite a {
  font-size: 14px !important;
}


/* Dates use the same visible accent as their story type. */
.isFrontPage .hm-home-news .hm-home-story.is-blog .item-date > span {
  color: var(--hm-primary);
  background: var(--home-news) !important;
  border: 0;
}

.isFrontPage .hm-home-news .hm-home-story.is-press .item-date > span {
  color: var(--hm-primary);
  background: var(--home-press) !important;
  border: 0;
}


/* Direct secondary-card targeting; do not rely on inherited type rules. */
.isFrontPage .hm-home-news .hm-blog-list > .hm-home-story:not(:first-child)
  .item-contenu2024 > p.hm-blog-excerpt {
  display: -webkit-box !important;
  overflow: hidden !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
  text-align: justify !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 9 !important;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.isFrontPage .hm-home-news .hm-blog-list > .hm-home-story:not(:first-child)
  .item-contenu2024 > h2,
.isFrontPage .hm-home-news .hm-blog-list > .hm-home-story:not(:first-child)
  .item-contenu2024 > h2 > a {
  font-size: 24px !important;
  line-height: 1.18 !important;
}


/* Double quick-action button text size. */
.isFrontPage .hm-home-quick .list-link-arrow > li > a {
  min-height: 84px;
  padding: 16px 56px 16px 20px;
  font-size: 20px !important;
  line-height: 1.08 !important;
}

.isFrontPage .hm-home-quick .list-link-arrow > li > a::before {
  font-size: 22px;
}

.isFrontPage .hm-home-quick .list-link-arrow > li > a::after {
  right: 18px;
  width: 32px;
  height: 32px;
  font-size: 16px;
}


/* Equal-height quick actions, based on the longest label. */
.isFrontPage .hm-home-quick .list-link-arrow {
  grid-auto-rows: 1fr;
  align-items: stretch;
}

.isFrontPage .hm-home-quick .list-link-arrow > li {
  display: flex;
  height: 100%;
}

.isFrontPage .hm-home-quick .list-link-arrow > li > a {
  width: 100%;
  height: 100%;
}

/* Homepage 2026: consolidated responsive layer. */
@media screen and (max-width: 768px) {
  .isFrontPage .wpr-block2024 {
    margin-top: 0 !important;
  }

  .isFrontPage #section2024 .wpr-block2024 > .block.widthRegulator {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .isFrontPage .hm-homepage-2026,
  .isFrontPage .hm-homepage-2026 *,
  .isFrontPage .hm-homepage-2026 *::before,
  .isFrontPage .hm-homepage-2026 *::after {
    box-sizing: border-box;
  }

  .isFrontPage .hm-homepage-2026 {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
  }

  .isFrontPage .hm-homepage-2026 section {
    width: 100%;
    min-width: 0;
    margin-top: 34px !important;
  }

  .isFrontPage .hm-home-intro {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 28px 0 0 !important;
  }

  .isFrontPage .hm-home-kicker,
  .isFrontPage .hm-home-eyebrow {
    margin-bottom: 8px;
    font-size: 14px !important;
    line-height: 1.2 !important;
    letter-spacing: .1em;
  }

  .isFrontPage .hm-home-intro h1 {
    max-width: 100%;
    font-size: clamp(36px, 10.5vw, 48px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.025em;
    overflow-wrap: anywhere;
  }

  .isFrontPage .hm-home-intro-copy {
    max-width: none;
    margin-top: 18px;
  }

  .isFrontPage .hm-home-intro-copy p,
  .isFrontPage .hm-home-intro-copy li {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }

  .isFrontPage .hm-home-section-heading,
  .isFrontPage .hm-home-events .sidebar-title {
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
  }

  .isFrontPage .hm-home-section-heading h2,
  .isFrontPage .hm-home-events .sidebar-title h2,
  .isFrontPage .hm-home-jobs h2 {
    max-width: 100%;
    font-size: clamp(28px, 8vw, 34px) !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere;
  }

  /* Quick actions: one reliable grid with equal-height buttons. */
  .isFrontPage .hm-home-quick {
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  .isFrontPage .hm-home-quick .hm-home-section-heading {
    display: block !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .isFrontPage .hm-home-quick .list-link-arrow {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: 1fr !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .isFrontPage .hm-home-quick .list-link-arrow > li,
  .isFrontPage .hm-home-quick .list-link-arrow > li + li {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .isFrontPage .hm-home-quick .list-link-arrow > li > a,
  .isFrontPage .hm-home-quick .list-link-arrow > li + li > a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 86px !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 14px 48px 14px 15px !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere;
    border: 3px solid var(--quick-accent) !important;
    border-radius: 12px !important;
  }

  .isFrontPage .hm-home-quick .list-link-arrow > li > a::before {
    font-size: 21px !important;
  }

  .isFrontPage .hm-home-quick .list-link-arrow > li > a::after {
    right: 12px !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 15px !important;
  }

  /* Events: full artwork, stronger date hierarchy and stable cards. */
  .isFrontPage .hm-home-events .hm-activites-accueil {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    width: 100% !important;
  }

  .isFrontPage .hm-home-events .hm-activite-item,
  .isFrontPage .hm-home-events .hm-activite-item:nth-child(2n),
  .isFrontPage .hm-home-events .hm-activite-item:nth-child(3n),
  .isFrontPage .hm-home-events .hm-activite-item:last-child {
    grid-column: auto !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    border: 0 !important;
    border-left: 8px solid var(--home-activity) !important;
    border-bottom: 8px solid var(--home-activity) !important;
    border-radius: 3px 14px 3px 14px !important;
  }

  .isFrontPage .hm-home-events .hm-activite-item > a {
    width: 100%;
  }

  .isFrontPage .hm-home-events .hm-activite-item img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: contain !important;
    transform: none !important;
  }

  .isFrontPage .hm-home-events .hm-activite-contenu {
    width: 100%;
    min-width: 0;
    padding: 16px !important;
    background: #fff !important;
  }

  .isFrontPage .hm-home-events .hm-activite-meta {
    gap: 8px !important;
    margin-bottom: 13px !important;
  }

  .isFrontPage .hm-home-events .hm-activite-date {
    width: 100% !important;
    padding: 9px 11px !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    white-space: normal !important;
  }

  .isFrontPage .hm-home-events .hm-activite-type {
    padding: 4px 0 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .isFrontPage .hm-home-events .hm-activite-titre,
  .isFrontPage .hm-home-events .hm-activite-titre a {
    font-size: 27px !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere;
  }

  .isFrontPage .hm-home-events .hm-activite-extrait {
    display: -webkit-box !important;
    overflow: hidden !important;
    margin-top: 11px !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    text-align: justify !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 6 !important;
  }

  /* News and press review: force a clean single-column editorial stack. */
  .isFrontPage .hm-home-news .hm-blog-list {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
    width: 100% !important;
  }

  .isFrontPage .hm-home-news .hm-home-story,
  .isFrontPage .hm-home-news .hm-home-story + .hm-home-story,
  .isFrontPage .hm-home-news .hm-home-story:first-child,
  .isFrontPage .hm-home-news .hm-home-story:nth-child(n + 6) {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    border-radius: 12px !important;
    transform: none !important;
  }

  .isFrontPage .hm-home-news .hm-home-story.is-blog,
  .isFrontPage .hm-home-news .hm-home-story.is-blog:first-child {
    border-top: 10px solid var(--home-news) !important;
  }

  .isFrontPage .hm-home-news .hm-home-story.is-press,
  .isFrontPage .hm-home-news .hm-home-story.is-press:first-child {
    border-top: 10px solid var(--home-press) !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .item-date {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px 14px 0 !important;
    background: #fff !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .item-date > span,
  .isFrontPage .hm-home-news .hm-home-story .place-max {
    display: inline-flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-height: 26px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .place-max p,
  .isFrontPage .hm-home-news .hm-home-story .place-max p span {
    display: inline !important;
    width: auto !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: inherit !important;
    line-height: inherit !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .item-contenu,
  .isFrontPage .hm-home-news .hm-home-story .item-contenu2024 {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 13px 14px 16px !important;
    background: #fff !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .hm-blog-image {
    width: auto !important;
    margin: -13px -14px 14px !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .hm-blog-image img,
  .isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 210px !important;
    margin: 0 !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  .isFrontPage .hm-home-news .hm-home-story h2,
  .isFrontPage .hm-home-news .hm-home-story h2 a,
  .isFrontPage .hm-home-news .hm-blog-list > .hm-home-story:not(:first-child) .item-contenu2024 > h2,
  .isFrontPage .hm-home-news .hm-blog-list > .hm-home-story:not(:first-child) .item-contenu2024 > h2 > a {
    margin-bottom: 9px !important;
    font-size: 23px !important;
    line-height: 1.16 !important;
    overflow-wrap: anywhere;
  }

  .isFrontPage .hm-home-news .hm-home-story:first-child h2,
  .isFrontPage .hm-home-news .hm-home-story:first-child h2 a {
    font-size: 29px !important;
    line-height: 1.1 !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .hm-blog-excerpt,
  .isFrontPage .hm-home-news .hm-blog-list > .hm-home-story:not(:first-child) .item-contenu2024 > p.hm-blog-excerpt {
    display: -webkit-box !important;
    overflow: hidden !important;
    margin: 0 0 12px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    text-align: justify !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 7 !important;
  }

  .isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-excerpt {
    display: -webkit-box !important;
    overflow: hidden !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 10 !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .lien-activite {
    margin: auto 0 0 !important;
    padding-top: 4px !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .lien-activite a {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  .isFrontPage .hm-home-news .hm-blog-load-more {
    display: block;
    width: 100%;
    min-height: 52px;
    margin: 22px 0 0;
    padding: 12px 18px;
    font-size: 16px;
  }

  /* Secondary sections keep the same compact rhythm. */
  .isFrontPage .hm-home-jobs {
    display: block !important;
    padding: 20px !important;
    background: #fff !important;
    border: 2px solid var(--hm-accent2);
    border-radius: 12px !important;
  }

  .isFrontPage .hm-home-jobs .hm-home-eyebrow {
    margin-bottom: 7px !important;
  }

  .isFrontPage .hm-home-jobs ul {
    margin: 15px 0 0 !important;
    padding: 0 !important;
  }

  .isFrontPage .hm-home-jobs li,
  .isFrontPage .hm-home-jobs a {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  .isFrontPage .hm-home-jobs a {
    padding: 12px 0 !important;
    overflow-wrap: anywhere;
  }

  .isFrontPage .hm-home-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin-top: 24px !important;
  }

  .isFrontPage .hm-home-links a {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 46px;
    padding: 10px 14px !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    overflow-wrap: anywhere;
    border-width: 2px !important;
    border-radius: 10px !important;
  }

  /* Touch devices must not retain a desktop hover state after a tap. */
  .isFrontPage .hm-home-quick .list-link-arrow > li > a:hover,
  .isFrontPage .hm-home-events .hm-activite-item:hover,
  .isFrontPage .hm-home-events .hm-activite-item:hover .hm-activite-contenu,
  .isFrontPage .hm-home-news .hm-home-story.is-blog:hover,
  .isFrontPage .hm-home-news .hm-home-story.is-blog:hover .item-date,
  .isFrontPage .hm-home-news .hm-home-story.is-blog:hover .item-contenu2024,
  .isFrontPage .hm-home-news .hm-home-story.is-press:hover,
  .isFrontPage .hm-home-news .hm-home-story.is-press:hover .item-date,
  .isFrontPage .hm-home-news .hm-home-story.is-press:hover .item-contenu2024 {
    background-color: #fff !important;
    transform: none !important;
  }

  .isFrontPage .hm-home-events .hm-activite-item:hover img {
    transform: none !important;
  }
}

@media screen and (max-width: 540px) {
  .isFrontPage .hm-home-quick .list-link-arrow {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .isFrontPage .hm-home-quick .list-link-arrow > li > a,
  .isFrontPage .hm-home-quick .list-link-arrow > li + li > a {
    min-height: 78px !important;
    font-size: 18px !important;
  }

  .isFrontPage .hm-home-news .hm-home-story .hm-blog-image img,
  .isFrontPage .hm-home-news .hm-home-story:first-child .hm-blog-image img {
    height: 190px !important;
  }
}

/* Homepage mobile: reserve space for the fixed header. */
@media screen and (max-width: 768px) {
  .isFrontPage #section2024 {
    padding-top: 50px !important;
  }

  .isFrontPage #section2024 .wpr-block2024 {
    margin-top: 0 !important;
  }
}

/* The legacy phone header doubles from 50px to 100px on these devices. */
@media only screen and (min-device-width: 320px) and (max-device-width: 667px) {
  .isFrontPage #section2024 {
    padding-top: 100px !important;
  }
}

