/* LightTide service refresh — à charger après les feuilles existantes.
   Périmètre : .lt-finish .sf-services. Aucun JS. */

/* 1. Correctif sticky : le panneau latéral reste dans le flux normal de la grille.
   Position, colonne et rang (col 2 / rang 1) restent ceux de la finition actuelle. */
.lt-finish .sf-services .xp-notebook-side,
.lt-finish .sf-services .xp-notebook > aside.xp-notebook-side{
  position:static;
  top:auto;
  align-self:start;
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere; /* textes longs sans hauteur fixe */
}
/* Le bloc de sauvegarde (inséré par le contrôleur) garde sa cellule et peut se rétrécir */
.lt-finish .sf-services .xp-notebook > [data-save-brief]{
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
}

/* 2. Cartes du catalogue : images en valeur */
.lt-finish .sf-services .sc-grid .sc-card{
  min-width:0;
  overflow-wrap:anywhere;
}
.lt-finish .sf-services .sc-grid .sc-card .sc-art{
  display:block;
  margin:0;
  overflow:hidden;               /* cadre de l'image seulement, pas de la page */
  border-radius:12px;
  background:#ece6d9;            /* pierre, visible si l'image charge lentement */
  aspect-ratio:3 / 2;            /* raster paysage 3:2 prévu */
  border:1px solid rgba(21,59,81,.18);
}
.lt-finish .sf-services .sc-grid .sc-card .sc-art img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:cover;              /* 3:2 sur 3:2 : aucun recadrage visible ; SVG existants : voir limites */
  object-position:center;
}
/* Les SVG d'origine ne sont pas rognés si Lumi les garde en place */
.lt-finish .sf-services .sc-grid .sc-card .sc-art img[src$=".svg"]{
  object-fit:contain;
  padding:6px;
}

/* 3. Légendes et textes de carte : lecture et respiration */
.lt-finish .sf-services .sc-grid .sc-card .sc-art + *{
  margin-top:.75rem;
}
.lt-finish .sf-services .sc-grid .sc-card :is(figcaption,.sc-caption){
  line-height:1.5;
  max-width:60ch;
}

/* 4. Contrôles : cibles d'au moins 44 px et focus lisible */
.lt-finish .sf-services .sc-card button[data-sc-open],
.lt-finish .sf-services [data-sc-filter]{
  min-height:44px;
  min-width:44px;
}
.lt-finish .sf-services .sc-card button[data-sc-open]:focus-visible,
.lt-finish .sf-services [data-sc-filter]:focus-visible{
  outline:3px solid #153b51;
  outline-offset:3px;
}

/* 5. Mouvement réduit : rien de décoratif ajouté ici, donc rien à retirer ;
   règle de sécurité pour d'éventuelles transitions héritées sur les images */
@media (prefers-reduced-motion:reduce){
  .lt-finish .sf-services .sc-grid .sc-card .sc-art img{
    transition:none;
    animation:none;
  }
}

/* R2499 adaptation after source specificity review: full original raster frames. */
body.lt-finish .sf-services .sc-grid .sc-card .sc-art{position:relative;height:auto;min-height:0;aspect-ratio:3/2;padding:0;border:0;border-radius:0;background:#e6ece6}
body.lt-finish .sf-services .sc-card[data-sc-card] .sc-art img{position:static;display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:3/2;object-fit:contain;object-position:center;transform:none;padding:0;border:0;box-shadow:none}
body.lt-finish .sf-services .sc-inline-detail .sc-detail-art{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:3/2;object-fit:contain;object-position:center}
body.lt-finish .sf-services .xp-side-frame{height:auto;min-height:0;max-height:none;aspect-ratio:3/2;padding:0}
body.lt-finish .sf-services .xp-side-frame img{width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:3/2;object-fit:contain;object-position:center;transform:none}
body.lt-finish .sf-services .sc-card-kicker{max-width:calc(100% - 24px);padding:7px 10px;background:#fffdf8f5;color:#153b51;font-size:clamp(.65rem,.65vw,.8rem);letter-spacing:.08em}
body.lt-finish .sf-services .sc-card-body{gap:.6rem}
body.lt-finish .sf-services .sc-card button[data-sc-open]{margin-top:auto}
@media(forced-colors:active){.lt-finish .sf-services .sc-card button[data-sc-open]:focus-visible,.lt-finish .sf-services [data-sc-filter]:focus-visible{outline-color:Highlight}}
