/* ===== Editions page ===== */
/* The blurred sticky header flashed while the long photo wall scrolled under it:
   give it its own compositing layer so it is not repainted with the content below */
.site-header{-webkit-backdrop-filter:blur(12px);transform:translateZ(0)}
.ed-page{padding-top:120px}


/* Timeline: a vertical rail with one node per edition */
.ed-timeline{list-style:none;margin:0;padding:0;position:relative}
.ed-timeline::before{content:"";position:absolute;inset-inline-start:27px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--orange),var(--purple-2) 70%,var(--line))}
.ed-item{position:relative;isolation:isolate;padding-inline-start:84px;scroll-margin-top:110px}
.ed-item + .ed-item{margin-top:110px}
.ed-item::before{content:"";position:absolute;inset-inline-start:20px;top:12px;width:16px;height:16px;border-radius:50%;background:var(--bg);border:3px solid var(--orange);box-shadow:0 0 0 6px rgba(238,106,44,.15)}

.ed-intro{position:relative;display:grid;grid-template-columns:1fr minmax(0,560px);gap:48px;align-items:center}
.ed-num{position:absolute;inset-inline-start:0;top:-84px;font-family:var(--serif);font-weight:900;font-size:120px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(196,176,255,.18);pointer-events:none;z-index:-1}
.ed-copy p{color:var(--text);opacity:.88;font-size:16.5px;line-height:2;margin:16px 0 26px}
.ed-copy .title.sm{color:var(--heading)}


.ed-cover{position:relative;display:block;align-self:center;width:100%;padding:0;border-radius:18px;overflow:hidden;cursor:zoom-in;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.ed-cover img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .6s ease}
.ed-cover:hover img{transform:scale(1.05)}
.ed-count{position:absolute;inset-inline-end:14px;bottom:14px;padding:5px 14px;border-radius:999px;background:rgba(12,6,32,.85);font-size:13px;font-weight:600;color:#fff}

/* Photo wall: masonry via columns, each photo opens the lightbox at its index */
.ed-photos{list-style:none;margin:40px 0 0;padding:0;columns:4 200px;column-gap:12px}
.ed-photos li{break-inside:avoid;margin-bottom:12px}
.ed-photos button{display:block;width:100%;padding:0;border-radius:10px;overflow:hidden;cursor:zoom-in;background:var(--surface)}
.ed-photos img{width:100%;height:auto;transition:transform .5s ease,opacity .3s}
.ed-photos button:hover img{transform:scale(1.04);opacity:.85}
.ed-cover:focus-visible,.ed-photos button:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

/* Upcoming edition */
.ed-next .ed-intro{grid-template-columns:1fr;padding:40px 44px;border-radius:20px;border:1px dashed rgba(238,106,44,.5);background:linear-gradient(135deg,rgba(238,106,44,.12),rgba(79,50,146,.15))}
.ed-next .ed-num{top:-80px}
.ed-next .ed-copy p{max-width:640px;margin-bottom:24px}
.ed-next::before{background:var(--orange)}
.ed-cta{display:flex;flex-wrap:wrap;gap:14px}

@media (max-width:900px){
  .ed-intro{grid-template-columns:1fr;gap:28px}
  .ed-cover{order:-1}
  .ed-num{display:none}
}
@media (max-width:720px){
  .ed-page{padding-top:32px;padding-bottom:70px}
  .ed-timeline::before{inset-inline-start:7px}
  .ed-item{padding-inline-start:30px}
  .ed-item::before{inset-inline-start:0;width:12px;height:12px;border-width:2px}
  .ed-item + .ed-item{margin-top:72px}
  .ed-photos{columns:2;column-gap:8px}
  .ed-photos li{margin-bottom:8px}
  .ed-next .ed-intro{padding:26px 22px}
}
@media (prefers-reduced-motion:reduce){
  .ed-cover img,.ed-photos img{transition:none}
  .ed-cover:hover img,.ed-photos button:hover img{transform:none}
}
