
/* festivals layer — loaded only by the festival pages, so the main
   stylesheet stays the size it is. */
.wheelwrap{margin:1rem 0 .4rem;text-align:center}
.wheelwrap svg{max-width:100%;height:auto;border:1px solid var(--soft);border-radius:1rem;background:#fff}
.wheelkey{display:flex;flex-wrap:wrap;gap:.5rem .95rem;justify-content:center;margin:.5rem 0 1.1rem;
font-size:.84rem;color:var(--ink)}
.wheelkey span{display:inline-flex;align-items:center;gap:.35rem}
.wheelkey i{width:.85rem;height:.85rem;border-radius:.3rem;display:inline-block}
.comingup{border:1px solid var(--soft);border-left:5px solid var(--day);border-radius:.8rem;
background:#fff;padding:.75rem 1rem;margin:1rem 0}
.comingup h2{margin:.1rem 0 .5rem;font-size:1.05rem}
.comingup ul{margin:.2rem 0;padding-left:1.1rem}
.comingup li{margin:.2rem 0}
.comingup .cuwhen{color:var(--mute);font-size:.85rem}
.festhead{border-bottom:3px double var(--ant);padding-bottom:.5rem;margin-bottom:.8rem}
.festmeta{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 .9rem}
.festmeta span{background:var(--soft);border-radius:.5rem;padding:.15rem .55rem;font-size:.82rem}
.festbody{max-width:44rem}
.festbody h2{font-size:1.08rem;margin:1.3rem 0 .35rem}
.merit{background:#fff;border:1px solid var(--soft);border-left:5px solid #B8912E;
border-radius:.7rem;padding:.7rem 1rem;margin:.7rem 0}
.verify{background:#FFF6E9;border:1px solid #E4C98F;border-radius:.7rem;padding:.65rem 1rem;
margin:.7rem 0;font-size:.9rem}
.venuelist{list-style:none;padding:0;margin:.4rem 0}
.venuelist li{padding:.3rem 0;border-bottom:1px dashed var(--soft)}
.instances{margin:.5rem 0}
.festnav{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0 .6rem}
.festnav a{background:#fff;border:1px solid var(--soft);border-radius:.6rem;padding:.3rem .7rem;
text-decoration:none;font-size:.88rem}
.festhere{margin:1.2rem 0;padding:.8rem 1rem;background:#fff;border:1px solid var(--soft);
border-radius:.8rem}
.festhere h2{margin:.1rem 0 .5rem;font-size:1.02rem}
.festhere ul{margin:.2rem 0;padding-left:1.1rem}
