/* =============================================================================
   Section « Ils nous font confiance » de l'accueil : bande de réalisations
   qui défile de gauche à droite, en pause au survol.
============================================================================= */
.trusted { overflow: hidden; }
.p-marquee { overflow: hidden; padding: 8px 0 12px; mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.p-track { display: flex; width: max-content; animation: p-slide 70s linear infinite; }
.p-marquee:hover .p-track, .p-marquee:focus-within .p-track { animation-play-state: paused; }
.p-set { display: flex; gap: 22px; padding-right: 22px; }
.p-card { width: 320px; flex: none; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s; }
.p-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -18px rgba(16, 24, 40, .25); }
.p-shot { display: block; aspect-ratio: 16 / 10; overflow: hidden; border-bottom: 1px solid var(--line); background: var(--tint, #F4F6FA); }
.p-shot img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform .5s; }
.p-card:hover .p-shot img { transform: scale(1.04); }
.p-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 4px; }
.p-body small { font-size: 12.5px; font-weight: 600; color: var(--muted); }
.p-body b { font-size: 17px; color: var(--ink); letter-spacing: -.01em; }
.p-body .more { margin-top: 6px; font-size: 14px; }
@keyframes p-slide { from { transform: translateX(-50%); } to { transform: translateX(0); } }
@media (max-width: 640px) { .p-card { width: 260px; } .p-track { animation-duration: 55s; } }
@media (prefers-reduced-motion: reduce) {
  .p-track { animation: none; }
  .p-marquee { overflow-x: auto; mask-image: none; -webkit-mask-image: none; }
  .p-set[aria-hidden] { display: none; }
}

/* Cartes de réalisations de l'accueil */
.result-card .r-img { display: block; width: calc(100% + 56px); max-width: none; height: 190px; margin: -28px -28px 18px; object-fit: cover; object-position: center top; border-radius: var(--radius) var(--radius) 0 0; border-bottom: 1px solid var(--line); }
.result-card .r-tag { font-size: 13px; font-weight: 600; color: var(--muted) !important; margin-bottom: 14px; }
.result-card h3 { margin-top: 18px; }
.result-card .r-sum { font-size: 15px; }
.result-card .more { margin-top: auto; }
.cards-3:has(> :nth-child(4):last-child) { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 640px) { .cards-3:has(> :nth-child(4):last-child) { grid-template-columns: 1fr; } }
