/* Sections 4B uniquement : Hero, header et composants S3-US02 inchangés. */
.t4hi-home-domains { background: var(--t4hi-color-background); }
.t4hi-home-domains__grid { display: grid; gap: var(--t4hi-space-6); }
.t4hi-home-domains__grid > *, .t4hi-home-featured__grid > * { min-width: 0; }
.t4hi-home-domains__intro { display: grid; align-items: center; gap: var(--t4hi-space-6); margin-bottom: var(--t4hi-space-6); }
.t4hi-home-domains__intro > * { min-width: 0; }
.t4hi-home-domains__intro > div:first-child { max-width: 42rem; }
.t4hi-home-domains__media { overflow: hidden; border-radius: var(--t4hi-radius-card); }
.t4hi-home-domains__media > img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.t4hi-home-domains__item { display: flex; flex-direction: column; padding: var(--t4hi-space-5); border: 1px solid var(--t4hi-color-supporting-green); border-radius: var(--t4hi-radius-card); background: var(--t4hi-color-white); overflow-wrap: anywhere; transition: border-color var(--t4hi-motion-duration) var(--t4hi-motion-easing); }
.t4hi-home-domains__item > .t4hi-cta { margin-top: auto; align-self: flex-start; }
@media (hover: hover) { .t4hi-home-domains__item:hover { border-color: var(--t4hi-color-primary); } }
.t4hi-home-domains__icon { color: var(--t4hi-color-primary); margin-bottom: var(--t4hi-space-4); }
.t4hi-home-domains__icon .t4hi-icon { width: 2rem; height: 2rem; }
.t4hi-home-featured { background: var(--t4hi-color-white); }
.t4hi-home-featured__grid { display: grid; align-items: center; gap: var(--t4hi-space-6); }
.t4hi-home-featured__media { overflow: hidden; border-radius: var(--t4hi-radius-card); }
.t4hi-home-featured__media > img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.t4hi-home-featured__media .t4hi-fallback { aspect-ratio: 4 / 3; }
.t4hi-home-featured__badges { display: flex; flex-wrap: wrap; gap: var(--t4hi-space-2); margin-block: var(--t4hi-space-4); }
@media (min-width: 768px) {
  .t4hi-home-domains__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  .t4hi-home-domains__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--t4hi-space-5); }
  .t4hi-home-domains__intro--with-image { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .t4hi-home-featured__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Phase 4D : grille Home, cartes et fallback S3-US02 réutilisés sans modification. */
.t4hi-home-news { background: var(--t4hi-color-background); }
.t4hi-home-news__grid { display: grid; gap: var(--t4hi-space-5); }
.t4hi-home-news .t4hi-home-news__all { margin-top: var(--t4hi-space-6); margin-bottom: 0; }
@media (min-width: 768px) {
  .t4hi-home-news__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  .t4hi-home-news__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Phase 4C : sélecteurs propres aux nouvelles sections éditoriales. */
.t4hi-home-editorial-intro { max-width: 48rem; margin-bottom: var(--t4hi-space-6); }
.t4hi-home-programmes { background: var(--t4hi-color-background); }
.t4hi-home-programmes__grid,
.t4hi-home-approach__intro,
.t4hi-home-approach__steps,
.t4hi-home-ecosystem__grid,
.t4hi-home-engage__grid { display: grid; gap: var(--t4hi-space-6); }
.t4hi-home-programmes__item { display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; gap: var(--t4hi-space-5); }
.t4hi-home-programmes__item > * { min-width: 0; }
.t4hi-home-programmes__media { overflow: hidden; border-radius: var(--t4hi-radius-card); }
.t4hi-home-programmes__media > img,
.t4hi-home-programmes__media > .t4hi-fallback { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.t4hi-home-programmes__media > .t4hi-fallback { display: flex; }
.t4hi-home-programmes__body { overflow-wrap: anywhere; }
.t4hi-home-programmes__body > :last-child { margin-bottom: 0; }
@media (min-width: 1025px) {
  .t4hi-home-programmes__item { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--t4hi-space-6); }
  .t4hi-home-programmes__item:nth-child(odd) > .t4hi-home-programmes__body { grid-column: 1; grid-row: 1; }
  .t4hi-home-programmes__item:nth-child(odd) > .t4hi-home-programmes__media { grid-column: 2; grid-row: 1; }
}
.t4hi-home-editorial-number { display: block; color: var(--t4hi-color-secondary-dark); font-weight: var(--t4hi-weight-strong); font-size: var(--t4hi-size-h3); line-height: var(--t4hi-line-heading); }
.t4hi-home-approach { background: var(--t4hi-color-background-soft); }
.t4hi-home-approach__intro { margin-bottom: var(--t4hi-space-6); align-items: center; }
.t4hi-home-approach .t4hi-home-approach__steps { margin: 0; padding: 0; list-style: none; }
.t4hi-home-approach__steps > li { min-width: 0; border: 1px solid var(--t4hi-color-supporting-green); border-radius: var(--t4hi-radius-card); padding: var(--t4hi-space-4); background: var(--t4hi-color-background); overflow-wrap: anywhere; }
.t4hi-home-approach__steps > li > :last-child { margin-bottom: 0; }
.t4hi-home-approach__steps .t4hi-home-editorial-number { margin-bottom: var(--t4hi-space-4); }
.t4hi-home-ecosystem { background: var(--t4hi-color-white); }
.t4hi-home-ecosystem__grid > article { min-width: 0; padding: var(--t4hi-space-5); border-left: 2px solid var(--t4hi-color-secondary); background: var(--t4hi-color-background); }
.t4hi-home-ecosystem__icon { color: var(--t4hi-color-primary); margin-bottom: var(--t4hi-space-4); }
.t4hi-home-ecosystem__icon .t4hi-icon { width: 2rem; height: 2rem; }
.t4hi-home-ecosystem__family + .t4hi-home-ecosystem__family { margin-top: var(--t4hi-space-6); }
.t4hi-home-ecosystem__cards { display: grid; gap: var(--t4hi-space-5); align-items: start; }
.t4hi-home-ecosystem__card { min-width: 0; overflow: hidden; border-radius: var(--t4hi-radius-card); background: var(--t4hi-color-background); overflow-wrap: anywhere; }
.t4hi-home-ecosystem__media { height: 12rem; overflow: hidden; }
.t4hi-home-ecosystem__media > img, .t4hi-home-ecosystem__media > .t4hi-fallback { display: block; width: 100%; height: 100%; object-fit: cover; }
.t4hi-home-ecosystem__card--member .t4hi-home-ecosystem__media > img { object-fit: cover; object-position: center 30%; }
.t4hi-home-ecosystem__card--partner .t4hi-home-ecosystem__media { height: 9rem; background: var(--t4hi-color-white); }
.t4hi-home-ecosystem__card--partner .t4hi-home-ecosystem__media > img { object-fit: contain; padding: var(--t4hi-space-4); }
.t4hi-home-ecosystem__body { display: grid; gap: var(--t4hi-space-2); padding: var(--t4hi-space-4); background: var(--t4hi-color-background-soft); }
.t4hi-home-ecosystem__card--partner { background: transparent; border-radius: 0; overflow: visible; }
.t4hi-home-ecosystem .t4hi-home-ecosystem__partner-name { margin: var(--t4hi-space-2) 0 0; text-align: center; }
.t4hi-home-ecosystem__partner-name > a { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; color: var(--t4hi-color-primary); text-decoration: underline; text-underline-offset: 0.2em; }
.t4hi-home-ecosystem__body > h3, .t4hi-home-ecosystem__body > p { margin: 0; }
.t4hi-home-ecosystem__body .t4hi-home-ecosystem__role { color: var(--t4hi-color-primary); font-weight: var(--t4hi-weight-strong); }
.t4hi-home-ecosystem__body > .t4hi-cta { justify-self: start; }
.t4hi-home-ecosystem__card--member { box-shadow: var(--t4hi-shadow-soft); }
.t4hi-home-ecosystem__card--member .t4hi-home-ecosystem__body { background: var(--t4hi-color-primary); color: var(--t4hi-color-white); --t4hi-focus-color: var(--t4hi-color-white); }
.t4hi-home-ecosystem__card--member .t4hi-home-ecosystem__body > h3,
.t4hi-home-ecosystem__card--member .t4hi-home-ecosystem__body > p,
.t4hi-home-ecosystem__card--member .t4hi-home-ecosystem__body > a:not(.button):not(.elementor-button):not([role="button"]) { color: var(--t4hi-color-white); }
.t4hi-home-ecosystem__card--member .t4hi-home-ecosystem__body > a:not(.button):not(.elementor-button):not([role="button"]):hover { color: var(--t4hi-color-white); text-decoration-thickness: 2px; }
@media (min-width: 768px) {
  .t4hi-home-ecosystem__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  .t4hi-home-ecosystem__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.t4hi-home-engage { background: var(--t4hi-color-primary); color: var(--t4hi-color-white); }
.t4hi-home-engage h2, .t4hi-home-engage h3 { color: var(--t4hi-color-white); }
.t4hi-home-engage__grid > article { min-width: 0; border-top: 1px solid var(--t4hi-color-white); padding-top: var(--t4hi-space-4); }
@media (min-width: 768px) {
  .t4hi-home-approach__steps,
  .t4hi-home-ecosystem__grid,
  .t4hi-home-engage__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  .t4hi-home-approach__intro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .t4hi-home-approach__steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--t4hi-space-5); }
  .t4hi-home-engage__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* Deux replis : conserver les deux entrées éditoriales côte à côte. */
.t4hi-home-ecosystem__fallbacks { display: grid; gap: var(--t4hi-space-6); }
.t4hi-home-ecosystem__fallbacks .t4hi-home-ecosystem__family { margin-top: 0; }
.t4hi-home-ecosystem__fallbacks .t4hi-home-ecosystem__grid { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 768px) {
  .t4hi-home-ecosystem__fallbacks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
