/* Cornerstone Events — theme-agnostic fallback styles.
   A Cornerstone theme can restyle everything via these same class names. */

.cstone-wrap{max-width:1120px;margin:0 auto;padding:2.5rem 1.25rem}
.cstone-header{margin-bottom:2rem}
.cstone-header h1{margin:0 0 .25rem;font-size:2rem;line-height:1.2}
.cstone-empty{border:1px dashed rgba(0,0,0,.2);border-radius:12px;padding:2.5rem 1.5rem;text-align:center;background:#fafafa}
.cstone-single .cstone-featured{max-width:100%;height:auto;border-radius:12px;margin-bottom:1.5rem}
.cstone-back{display:inline-block;margin-top:2rem;opacity:.7;text-decoration:none}
.cstone-details{display:grid;gap:.5rem;margin:0 0 1.5rem;padding:1rem 1.25rem;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fafafa}
.cstone-detail{display:flex;gap:.5rem;flex-wrap:wrap}
.cstone-detail dt{font-weight:600;margin:0;min-width:130px}
.cstone-detail dd{margin:0}

.cstone-event-list{display:grid;gap:1rem}
.cstone-card{border:1px solid rgba(0,0,0,.1);border-radius:12px;overflow:hidden;background:#fff}
.cstone-card a{text-decoration:none;color:inherit;display:flex;flex-wrap:wrap}
.cstone-card .thumb{flex:0 0 160px;aspect-ratio:16/10;background:#f2f3f5 center/cover no-repeat}
.cstone-card .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.cstone-card .body{flex:1 1 240px;padding:1rem}
.cstone-card h2{font-size:1.1rem;margin:0 0 .25rem}
.cstone-event-when{font-weight:600;font-size:.85rem;opacity:.7;margin:0 0 .25rem;text-transform:uppercase;letter-spacing:.03em}
.cstone-event-location{font-size:.9rem;opacity:.7;margin:0}
.cstone-event-featured-card .thumb{flex-basis:280px}

.cstone-event-calendar{margin-top:1rem}
.cstone-calendar-title{margin:0 0 1rem}
.cstone-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:rgba(0,0,0,.1);border:1px solid rgba(0,0,0,.1)}
.cstone-calendar-dow{background:#fafafa;padding:.5rem;text-align:center;font-size:.8rem;font-weight:600}
.cstone-calendar-cell{background:#fff;min-height:90px;padding:.4rem;font-size:.8rem}
.cstone-calendar-empty{background:#fafafa}
.cstone-calendar-day{font-weight:600;opacity:.6}
.cstone-calendar-events{list-style:none;margin:.3rem 0 0;padding:0;display:grid;gap:.2rem}
.cstone-calendar-events a{color:inherit;text-decoration:none;display:block;font-size:.75rem;line-height:1.3}
