/* La page Édition 2026 : les halos animés, les trois engagements et la
   pastille de date posée sur le carrousel. */

.page-single--ed2{overflow:hidden;position:relative}
.page-single--ed2::before,
.page-single--ed2::after{
  content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0;
}
.page-single--ed2::before{
  width:34vmax;height:34vmax;left:-12vmax;bottom:-16vmax;
  background:radial-gradient(circle at 40% 40%,color-mix(in oklab,var(--olive) 26%,transparent),transparent 68%);
  animation:ed2-float 16s ease-in-out infinite;
}
.page-single--ed2::after{
  width:24vmax;height:24vmax;right:-8vmax;top:-10vmax;
  background:radial-gradient(circle at 60% 60%,color-mix(in oklab,var(--clay) 22%,transparent),transparent 68%);
  animation:ed2-float 21s ease-in-out infinite reverse;
}
@keyframes ed2-float{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(3vmax,-2.5vmax,0) scale(1.08)}
}
.page-single--ed2 .page-grid{position:relative;z-index:1}

.intro--ed{position:relative}

/* les trois engagements */
.ed2-facts{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;gap:.5rem}
.ed2-facts li{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:.85rem;align-items:start;
  padding:.6rem .9rem;border-radius:14px;
  background:color-mix(in oklab,var(--paper) 78%,transparent);
  border:1px solid color-mix(in oklab,var(--moss-deep) 12%,transparent);
  opacity:0;animation:ed2-pop .6s var(--ease) forwards;
  transition:transform .28s var(--ease),border-color .28s var(--ease),background .28s var(--ease);
}
.ed2-facts li:nth-child(1){animation-delay:.42s}
.ed2-facts li:nth-child(2){animation-delay:.54s}
.ed2-facts li:nth-child(3){animation-delay:.66s}
.ed2-facts li:hover{transform:translateX(4px);background:var(--paper);
  border-color:color-mix(in oklab,var(--moss-deep) 28%,transparent)}
.ed2-facts-n{
  font-family:var(--font-display);font-size:.78rem;letter-spacing:.06em;
  color:var(--clay);padding-top:.15rem;
}
.ed2-facts b{display:block;font-size:.95rem;color:var(--bark);line-height:1.25}
.ed2-facts span{display:block;margin-top:.15rem;font-size:.82rem;line-height:1.45;color:var(--ink);opacity:.82}
@keyframes ed2-pop{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}

/* pastille de date posée sur le carrousel */
.page-single--ed2 .carousel{animation:ed2-rise .9s .25s var(--ease) both}
@keyframes ed2-rise{from{opacity:0;transform:translateY(26px) rotate(1.6deg)}to{opacity:1;transform:none}}
.ed2-stamp{
  position:absolute;z-index:3;left:-16px;top:-18px;
  width:74px;height:74px;border-radius:50%;
  display:grid;place-content:center;text-align:center;
  background:var(--clay);color:var(--paper);
  box-shadow:0 12px 24px -14px rgba(0,0,0,.6);
  transform:rotate(-9deg);animation:ed2-stampin .7s .8s var(--ease) both,ed2-bob 5.5s 1.6s ease-in-out infinite;
}
.ed2-stamp b{display:block;font-family:var(--font-display);font-size:1.6rem;line-height:1}
.ed2-stamp i{display:block;font-style:normal;font-size:.56rem;letter-spacing:.16em;font-weight:800;margin-top:.12rem}
@keyframes ed2-stampin{from{opacity:0;transform:rotate(-40deg) scale(.5)}to{opacity:1;transform:rotate(-9deg) scale(1)}}
@keyframes ed2-bob{0%,100%{transform:rotate(-9deg) translateY(0)}50%{transform:rotate(-6deg) translateY(-7px)}}

@media (max-width:960px){

  .ed2-facts{gap:.75rem;margin-top:1.4rem}
  .ed2-facts li{padding:.95rem 1rem;gap:.8rem}
  .ed2-facts b{font-size:.95rem}
  .ed2-facts span{font-size:.86rem;line-height:1.55}
  .ed2-stamp{width:54px;height:54px;left:-8px;top:-10px}
  .ed2-stamp b{font-size:1.15rem}
  .ed2-stamp i{font-size:.46rem}

}
@media (prefers-reduced-motion:reduce){
  .page-single--ed2::before,.page-single--ed2::after,.ed2-facts li,.ed2-stamp,.page-single--ed2 .carousel{animation:none;opacity:1}

}

.page-single--ed2 .carousel{overflow:visible}

@media (max-width:960px){
  .page-single--ed2 .carousel{max-width:min(100%,340px);margin-inline:auto}
  .page-single--ed2{min-height:0;padding:6.4rem 0 2rem;align-items:flex-start}
}
@media (min-width:961px) and (max-height:780px){
  .page-single--ed2 .carousel{max-width:min(720px,86vh)}
}
@media (min-width:961px) and (max-height:690px){
  .page-single--ed2 .carousel{max-width:min(460px,58vh)}
}
@media (max-width:640px){
  .ed2-stamp{width:46px;height:46px;left:-6px;top:-8px}
}
@media (min-width:1400px){
  .page-single--ed2 .carousel{max-width:min(1000px,96vh)}
  .ed2-facts b{font-size:1.12rem}
  .ed2-facts span{font-size:1.02rem}
}
@media (min-width:1700px){
  .page-single--ed2 .carousel{max-width:min(1120px,98vh)}
}
