/* Accueil : les réalisations défilent une à la fois (demande de Romain, 09/10/2026).
   Une photo en grand, sans texte : flèches posées sur la photo, « Voir la réalisation », points dessous.
   Glissement au doigt ; sans JavaScript, la bande reste défilable. */
.home-page .realisation-carousel{position:relative}
.home-page .realisation-carousel-stage{position:relative}
.home-page .realisation-carousel .realisation-grid{position:relative;display:flex;align-items:stretch;gap:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.home-page .realisation-carousel .realisation-grid::-webkit-scrollbar{display:none}

/* Diapositive = la photo seule, sans cadre ni fond. */
.home-page .realisation-carousel .realisation-slide:nth-child(n){flex:0 0 100%;display:block;margin:0;padding:0;background:none;scroll-snap-align:start;scroll-snap-stop:always}
.home-page .realisation-carousel .realisation-slide>.realisation-photo{min-height:0;height:auto;aspect-ratio:16/9;max-height:min(680px,78svh);width:100%}
.home-page .realisation-carousel .realisation-slide>.realisation-photo img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}

@media(max-width:760px){
  .home-page .realisation-carousel .realisation-slide>.realisation-photo{aspect-ratio:1.12}
}

/* Légende posée sur la photo, comme sur la page Réalisations : catégorie, titre, description, « Découvrir ». */
.home-page .realisation-carousel .realisation-slide{position:relative;overflow:hidden;background:#1e1f1d}
.home-page .realisation-carousel .realisation-photo:after{inset:0;background:linear-gradient(180deg,transparent 42%,#0000008c 76%,#000000c2)}
.home-page .realisation-carousel .realisation-slide figcaption{position:absolute;left:36px;right:36px;bottom:32px;z-index:1;padding:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px 28px;color:#fff;pointer-events:none}
.home-page .realisation-carousel .realisation-kind{grid-column:1;grid-row:1;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#ffffffc4}
.home-page .realisation-carousel .realisation-slide :is(h2,h3){grid-column:1;grid-row:2;margin:0;max-width:none;color:#fff;font-size:clamp(28px,2.6vw,40px)!important;line-height:1.15!important;letter-spacing:-.03em;text-shadow:0 1px 12px #0005}
.home-page .realisation-carousel .realisation-summary{grid-column:1;grid-row:3;margin:4px 0 0;font-size:14px!important;line-height:1.6;color:#eee;max-width:52ch;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-shadow:0 1px 8px #0006}
.home-page .realisation-carousel .realisation-more{grid-column:2;grid-row:2/4;align-self:end;display:flex;flex-direction:row;align-items:center;gap:18px;white-space:nowrap}
.home-page .realisation-carousel .realisation-more small{font-size:12px;color:#ffffffb8}
.home-page .realisation-carousel .realisation-more .card-action{color:#fff;background:transparent;text-decoration:none}


@media(max-width:760px){
  .home-page .realisation-carousel .realisation-slide figcaption{left:18px;right:18px;bottom:18px;grid-template-columns:1fr}
  .home-page .realisation-carousel .realisation-slide :is(h2,h3){font-size:24px!important}
  .home-page .realisation-carousel .realisation-summary{font-size:13px!important}
  .home-page .realisation-carousel .realisation-more{grid-column:1;grid-row:4;flex-direction:row;align-items:center;gap:14px;margin-top:4px}
  .home-page .realisation-carousel .realisation-slide>.realisation-photo{aspect-ratio:4/5}
  .home-page .realisation-carousel .photo-arrow{top:36%}
}

.realisation-carousel-controls{display:flex;align-items:center;justify-content:center;margin-top:18px}
.realisation-carousel-controls[hidden]{display:none}
.realisation-carousel-dots{display:flex;align-items:center;gap:25px;width:min(100%,495px)}
.carousel-dot{position:relative;flex:1;min-width:0;width:105px;height:44px;padding:0;border:0;background:none;cursor:pointer}
.carousel-dot::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;margin-top:0;background:#a9a9a5;transition:background .18s}
@media (hover:hover) and (pointer:fine){.carousel-dot:hover::before{background:#6c6155}}
.carousel-dot[aria-current=true]::before{height:2px;margin-top:-1px;background:#302c28}
.carousel-dot:focus-visible{outline:2px solid #292929;outline-offset:3px}
.realisation-carousel-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Le lien reste près des quatre indicateurs, sans séparation supplémentaire. */
.home-page .realisations-footer{border-top:0;margin-top:0;padding-top:0}

@media(max-width:760px){
  .realisation-carousel-controls{margin-top:14px}
}
@media(prefers-reduced-motion:reduce){
  .home-page .realisation-carousel .realisation-grid{scroll-behavior:auto}
  .carousel-dot::before{transition:none}
}
