/* page head */
.pagehead{padding:34px 0 8px}
.pagehead .lead strong{color:var(--ink)}

/* RadFest feature card */
.feature{display:grid;grid-template-columns:1.15fr 1fr;border:2px solid var(--ink);background:#fff;box-shadow:8px 8px 0 rgba(26,23,19,.85)}
.feature .still{position:relative;border-right:2px solid var(--ink);background:var(--ink);display:block}
.feature .still img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9;filter:saturate(1.05)}
.feature .still .tape{position:absolute;top:14px;left:-8px;background:var(--paper);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--red);padding:6px 14px;font-family:'Permanent Marker',cursive;font-size:14px;color:var(--red);transform:rotate(-2.5deg)}
.feature .still .views{position:absolute;bottom:12px;right:12px;background:var(--ink);color:var(--paper);font-weight:700;font-size:12px;padding:5px 10px;letter-spacing:.06em}
.feature .copy{padding:28px 30px 26px;display:flex;flex-direction:column;gap:0}
.feature .copy p{margin:0 0 14px;font-size:14.5px;line-height:1.65;color:var(--body)}
.feature .ctas{margin-top:auto;display:flex;gap:12px;flex-wrap:wrap;padding-top:6px}

/* editions ticket strip */
.editions{margin-top:26px;border:2px solid var(--ink);background:var(--panel);box-shadow:6px 6px 0 rgba(26,23,19,.85);padding:18px 22px 20px}
.editions .eh{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.editions .eh h3{margin:0;font-size:16px;font-weight:700;letter-spacing:.04em}
.tickets{display:flex;gap:0;flex-wrap:wrap}
.ticket{flex:1 1 130px;min-width:126px;border:2px solid var(--ink);background:#fff;margin:-1px 0 0 -1px;padding:10px 12px 11px}
.ticket b{display:block;font-size:19px;letter-spacing:-.01em}
.ticket b .x{color:var(--red)}
.ticket span{display:block;font-size:11.5px;line-height:1.45;color:var(--muted);margin-top:3px}
.ticket.hot{background:#F5E9C8;box-shadow:inset 3px 0 0 var(--red)}

/* next up — honest empty poster */
.nextup{border:2px dashed rgba(26,23,19,.55);background:rgba(255,255,255,.55);padding:34px 30px;text-align:center;position:relative}
.nextup .pin{position:absolute;top:-13px;left:50%;transform:translateX(-50%) rotate(-2deg);background:var(--red);color:#fff;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font-weight:700;font-size:12px;letter-spacing:.14em;padding:5px 14px}
.nextup h2{margin:6px 0 10px}
.nextup p{margin:0 auto 18px;max-width:56ch;font-size:15px;line-height:1.65;color:var(--body)}
.nextup .socials{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* archive strip */
.archgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.arch{border:2px solid var(--ink);background:#fff;box-shadow:5px 5px 0 rgba(26,23,19,.85);text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:transform .12s,box-shadow .12s}
.arch:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 rgba(26,23,19,.85)}
.arch img{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:2px solid var(--ink)}
.arch .ab{padding:13px 15px 15px}
.arch .ab b{display:block;font-size:14.5px;line-height:1.3}
.arch .ab span{display:block;font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}

/* two-up: map cross-link + community box */
.twoup{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}
.xcard{border:2px solid var(--ink);box-shadow:6px 6px 0 rgba(26,23,19,.85);padding:26px 28px;display:flex;flex-direction:column}
.xcard.map{background:#fff}
.xcard.community{background:var(--ink);color:var(--paper)}
.xcard.community h2{color:var(--paper)}
.xcard.community p{color:#c9c1b0}
.xcard p{margin:0 0 18px;font-size:14.5px;line-height:1.65;color:var(--body)}
.xcard .foot{margin-top:auto;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.xcard .mini-scrawl{font-family:'Permanent Marker',cursive;font-size:13px;margin-bottom:8px}
.xcard.community .mini-scrawl{color:var(--sodium)}
.btn.ghostdark{background:var(--paper);color:var(--ink);box-shadow:3px 3px 0 var(--red)}
.btn.ghostdark:hover{box-shadow:5px 5px 0 var(--red)}

@media(max-width:960px){
  .feature{grid-template-columns:1fr}
  .feature .still{border-right:0;border-bottom:2px solid var(--ink)}
  .archgrid{grid-template-columns:1fr}
  .twoup{grid-template-columns:1fr}
  .section{padding:40px 0}
}
