/* Archive-only components, layered on the approved gallery stylesheet. */

.crumb{
  display:flex; align-items:center; gap:9px; flex-wrap:wrap;
  margin:0 0 clamp(14px,2.4vw,22px);
  font-size:12px; letter-spacing:.06em; color:var(--muted);
}
.crumb a{
  text-decoration:none; color:var(--muted); font-weight:500;
  border-bottom:1px solid transparent; transition:color var(--t-fast) var(--ease),
  border-color var(--t-fast) var(--ease);
}
.crumb a:hover{color:var(--navy); border-color:var(--gold)}
.crumb a[href="#"]{color:var(--navy); font-weight:600; pointer-events:none}
.crumb span{color:var(--line-2)}

/* ---------- year filter ---------- */
.yfilter{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  margin-top:clamp(18px,3vw,26px);
}
.chip-link{
  margin-left:auto; text-decoration:none; color:var(--gold-ink);
  border-color:var(--gold); background:var(--gold-wash); font-weight:600;
}
.chip-link:hover{background:var(--gold); color:#fff; border-color:var(--gold)}

/* ---------- event cards ---------- */
.events{
  display:grid; gap:clamp(14px,2vw,22px);
  grid-template-columns:1fr;
  padding:0 clamp(16px,4vw,48px) clamp(26px,4vw,44px);
  max-width:var(--maxw); margin:0 auto;
}
@media(min-width:640px){.events{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.events{grid-template-columns:repeat(3,1fr)}}

.ecard{
  display:flex; flex-direction:column; text-decoration:none;
  background:var(--paper); border:1px solid var(--line); border-radius:var(--radius);
  overflow:hidden; box-shadow:var(--sh-1);
  transition:transform var(--t) var(--ease), box-shadow var(--t) var(--ease),
             border-color var(--t) var(--ease);
}
.ecard:hover{transform:translateY(-3px); border-color:var(--gold); box-shadow:var(--sh-2)}
.eph{aspect-ratio:16/10; overflow:hidden; background:var(--paper-3)}
.eph img{
  width:100%; height:100%; object-fit:cover; object-position:50% 32%;
  opacity:0; transition:opacity 340ms var(--ease), transform 480ms var(--ease);
}
.eph img.on{opacity:1}
.ecard:hover .eph img{transform:scale(1.035)}
.emeta{padding:15px 18px 18px}
.ekick{
  margin:0 0 5px; font-size:11px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--gold-ink);
}
.enm{
  font-family:'Archivo',sans-serif; font-weight:700; font-size:21px;
  letter-spacing:-.015em; margin:0 0 3px; color:var(--navy);
}
.ect{margin:0; font-size:13px; color:var(--muted); font-variant-numeric:tabular-nums}

section[hidden]{display:none}

/* ---------- download button busy state ---------- */
.btn.dl{cursor:pointer; border:0; font:inherit}
.btn.dl.busy{opacity:.72; cursor:progress}
.btn.dl .dl-t{white-space:nowrap}

@media(prefers-reduced-motion:reduce){
  .ecard:hover{transform:none}
  .ecard:hover .eph img{transform:none}
}
