*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{-webkit-font-smoothing:antialiased;line-height:1.6}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:1px solid currentColor;outline-offset:3px}

/* ---------- v.6 Minimal ---------- */
body{font-family:'Archivo',Helvetica,Arial,sans-serif;background:var(--bg);color:var(--fg);text-transform:uppercase;font-size:13px;letter-spacing:.03em;transition:background .3s,color .3s}
.d6 img{mix-blend-mode:multiply}
.d6 .page,.d6.page{min-height:100vh;display:flex;flex-direction:column}
.d6 header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:clamp(20px,3vw,36px)}
.corner-logo{min-height:20px}
.corner-logo img{display:block;height:28px;width:auto}
.header-right{display:flex;gap:clamp(24px,4vw,56px);text-align:right}
.d6 nav,.meta{display:flex;flex-direction:column;align-items:flex-end}
.d6 nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:3px}
.d6 main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px clamp(20px,5vw,56px) clamp(60px,12vh,140px);text-align:center}
.panel{display:flex;flex-direction:column;align-items:center;gap:40px;width:100%}
.home{gap:36px}
.big-logo{display:block;width:clamp(180px,26vw,340px);height:auto}
.hours{display:grid;grid-template-columns:auto auto;gap:0 24px;text-align:left}
.hours span:nth-child(even){text-align:right}
.d6 h1{margin:0;font-weight:500;font-size:13px;letter-spacing:.08em}
.groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:36px 56px;width:100%}
.group{display:flex;flex-direction:column;gap:2px}
.group-title{font-weight:500;margin-bottom:10px}
.item{text-wrap:balance;margin-bottom:6px}
.link{text-decoration:underline;text-underline-offset:3px}
.sub{opacity:.6}
.events{width:100%;max-width:820px;display:flex;flex-direction:column;border-bottom:1px solid currentColor}
.event{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2.4fr) minmax(70px,1fr);gap:8px 20px;align-items:baseline;padding:14px 0;border-top:1px solid currentColor;text-align:left}
.event>div{display:flex;flex-direction:column;gap:2px}
.event-title{font-weight:500}
.event .sub{text-wrap:pretty}
.event-time{text-align:right}
.body{margin:0;max-width:560px;text-wrap:pretty}

/* One panel at a time with JS; everything listed without */
.js .d6 .panel{display:none}
.js .d6 .panel.active{display:flex}
.js .corner-logo a{visibility:hidden}
.js[data-tab]:not([data-tab="home"]) .corner-logo a{visibility:visible}
html:not(.js) .d6 main{gap:80px}

@media (max-width:600px){
  .d6 header{flex-direction:column;align-items:flex-start}
  .header-right{width:100%;justify-content:space-between;text-align:left}
  .d6 nav,.meta{align-items:flex-start}
  .event{grid-template-columns:1fr auto}
  .event>div{grid-column:1/-1;grid-row:2}
}
