/* ============================================================
   RETOUCHES DESKTOP — 29/07/2026
   Toutes les règles sont enfermées dans @media (min-width:901px).
   Le rendu mobile (≤900px) reste strictement inchangé.
   ============================================================ */

@media (min-width:901px){

  /* ---- 1. Sous-titres de hero élargis (~70 % de l'écran) ----
     44ch ≈ 450px sur un écran de 1500px : beaucoup trop étroit.
     min() plafonne pour garder une longueur de ligne lisible
     sur les très grands écrans. */
  .hero-sub{
    max-width:min(70vw, 1060px) !important;
    font-size:17px;
    line-height:1.8;
  }

  /* ---- 1 bis. Le hero tient exactement dans l'écran ----
     Avec padding:120px et un sous-titre long (tapissier), le hero mesurait
     705px pour une fenêtre de 676px : le bouton passait sous la ligne de
     flottaison. min-height:100dvh reste en place, donc les heros au texte
     court ne bougent pas d'un pixel — seuls ceux qui débordaient rentrent. */
  .hero{ padding-top:96px; padding-bottom:96px; }

  /* ---- 2. RESTAURATION — « Un tapis très abîmé peut-il être sauvé ? »
     L'image se cale à droite et reste fixe pendant que le texte défile
     (même principe que « Tous les gestes de l'ébénisterie d'art »).
     overflow-x:clip laisse le position:sticky fonctionner, contrairement
     à overflow:hidden, tout en interdisant le scroll horizontal. */
  .seo:has(.split--sticky){ overflow-x:clip; }

  .split--sticky{
    grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);
    gap:clamp(40px,4.2vw,74px);
    align-items:start;          /* indispensable : « center » casse le sticky */
  }
  .split--sticky .split-media{
    position:sticky;
    top:104px;
    aspect-ratio:auto;
    height:min(80vh,780px);
    max-height:none;
    /* déborde jusqu'au bord droit de l'écran, sans jamais dépasser :
       (100vw - maxw)/2 + padding du .wrap */
    margin-right:calc(-1 * max(40px, (100vw - 1320px)/2 + 40px));
    border-radius:14px 0 0 14px;
  }
  /* Le texte respire davantage : cela allonge aussi la course pendant
     laquelle l'image reste figée (la course = hauteur du texte − hauteur
     de l'image). */
  .split--sticky .split-body > * + *{ margin-top:clamp(62px,6vw,98px); }
  .split--sticky .split-item p{ font-size:16px; }

}
