/* =============================================================================
   Church Map - events archive (port of events.html page styles).
   ========================================================================== */
.page-head{padding:44px 0 8px}
.page-head .lead{margin:10px 0 0}

.filters{position:sticky;top:66px;z-index:100;background:var(--bg);
  padding:16px 0 14px;border-bottom:1px solid var(--line)}
.filters .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filters .row .picker{flex:0 1 auto;min-width:172px}
.filters .free-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;
  font-weight:700;cursor:pointer;padding:9px 13px;border:1.5px solid var(--line);
  border-radius:999px;background:var(--card);user-select:none}
.filters .free-toggle input{accent-color:var(--gold);width:15px;height:15px;margin:0}
.filters .clear{background:none;border:none;color:var(--muted);font-size:13px;cursor:pointer;
  text-decoration:underline;padding:6px}
@media (max-width:640px){ .filters .row .picker{flex:1 1 46%;min-width:0} }

/* featured next event */
.feat-ev{display:grid;grid-template-columns:1fr 1fr;text-decoration:none;color:inherit;margin:26px 0 8px}
.feat-ev .ph{position:relative;min-height:260px}
.feat-ev .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feat-ev .in{padding:30px 34px;display:flex;flex-direction:column;justify-content:center;gap:8px}
.feat-ev .type{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--t)}
.feat-ev h2{font-size:clamp(22px,3vw,32px);line-height:1.12;margin:0}
.feat-ev p{margin:0;color:var(--muted);font-size:15px;line-height:1.55}
.feat-ev .meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;margin-top:6px}
.feat-ev .meta span{display:flex;gap:7px;align-items:center;font-weight:600}
.feat-ev .meta svg{width:15px;height:15px;color:var(--gold-deep);flex:none}
[data-theme="dark"] .feat-ev .meta svg{color:var(--gold)}
@media (max-width:780px){ .feat-ev{grid-template-columns:1fr} .feat-ev .ph{min-height:190px} .feat-ev .in{padding:22px} }

/* month groups */
.month{padding:26px 0 4px}
.month h2{font-size:21px;display:flex;align-items:center;gap:14px;margin:0 0 16px}
.month h2::after{content:"";flex:1;height:1px;background:var(--line)}
.ev-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:760px){ .ev-grid{grid-template-columns:1fr} }
