/* RÉALISATIONS — page propre (24/10/2026). Le hero pose les textes d'origine devant un mur des 18 sites qui défile lentement ;
   la grille se filtre par secteur, et chaque carte fait défiler la page du site au survol. Préfixe r-. */
.r-hero{position:relative;overflow:hidden}
.r-mur{position:absolute;inset:-10% -10% -10% 30%;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;transform:rotate(-8deg);opacity:.42;animation:r-monte 60s linear infinite alternate;pointer-events:none}
.r-mur img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:12px;border:1px solid rgba(220,229,242,.12)}
.r-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0A0B0E 28%,rgba(10,11,14,.75) 55%,rgba(10,11,14,.35));pointer-events:none}
.r-hero .enveloppe{position:relative;z-index:1}
@keyframes r-monte{to{transform:rotate(-8deg) translateY(-30%)}}

.r-filtres{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(28px,3vw,44px)}
.r-filtres button{padding:10px 18px;border-radius:999px;border:1px solid var(--w-filet-fort);background:none;color:var(--w-gris);font:500 14.5px/1 "Plus Jakarta Sans",system-ui,sans-serif;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.r-filtres button:hover{color:var(--w-blanc);border-color:rgba(220,229,242,.4)}
.r-filtres button[aria-pressed="true"]{background:#DCE5F2;border-color:#DCE5F2;color:#0A0B0E}
.r-grille{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.6vw,28px)}
.r-carte{transition:opacity .45s var(--w-ease),transform .5s var(--w-ease)}
.r-carte.est-cache{display:none}
.r-carte a{display:flex;flex-direction:column;gap:16px;color:inherit;text-decoration:none}
.r-carte__ecran{position:relative;display:block;aspect-ratio:16/11;border-radius:18px;overflow:hidden;border:1px solid var(--w-filet);background:#0C0D11;
  box-shadow:0 0 0 0 transparent;transition:border-color .4s,box-shadow .5s}
.r-carte__ecran img{width:100%;height:auto;transform:translateY(0);transition:transform 6s cubic-bezier(.45,0,.3,1)}
.r-carte a:hover .r-carte__ecran,.r-carte a:focus-visible .r-carte__ecran{border-color:color-mix(in srgb,var(--projet) 70%,transparent);box-shadow:0 30px 70px -30px color-mix(in srgb,var(--projet) 70%,transparent)}
.r-carte a:hover .r-carte__ecran img,.r-carte a:focus-visible .r-carte__ecran img{transform:translateY(calc(-100% + 300px))}
.r-carte__texte{display:grid;grid-template-columns:36px minmax(0,1fr);row-gap:4px}
.r-carte__num{grid-row:span 2;padding-top:4px;font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--projet)}
.r-carte__texte strong{font-size:19px;font-weight:600}
.r-carte__texte span:last-child{font-size:14px;line-height:1.45;color:var(--w-gris)}
.r-ancrage{margin:0 0 32px;font-size:clamp(18px,1.4vw,22px);line-height:1.6;color:var(--w-gris)}
.r-secteurs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--w-filet)}
.r-secteurs li{display:flex;flex-direction:column;gap:6px;padding:20px 0}
.r-secteurs strong{font-size:clamp(32px,2.6vw,44px);font-weight:600;letter-spacing:-.03em}
.r-secteurs span{font-size:14px;color:var(--w-gris)}
@media (max-width:1000px){.r-grille{grid-template-columns:1fr 1fr}.r-secteurs{grid-template-columns:repeat(3,1fr)}.r-mur{inset:-10% -40% -10% 10%}}
@media (max-width:640px){.r-grille{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.r-mur{animation:none}.r-carte__ecran img{transition:none}}
