/* 足を運べるスピリチュアルイベント。暦とは別の場所として、白と青で静かに。 */
body.gatherings-page{margin:0;background:var(--spire-paper);color:var(--spire-text);font-family:var(--spire-sans)}
.gatherings-shell{width:min(100% - 24px,1180px);margin:0 auto 72px}

.gatherings-hero{display:grid;gap:16px;padding:clamp(38px,5vw,64px) 0 clamp(28px,4vw,44px);border-bottom:1px solid var(--spire-ink)}
.gatherings-eyebrow{margin:0;color:var(--spire-site-calendar);font-family:var(--spire-eyebrow);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.gatherings-hero h1{margin:0;font-family:var(--spire-jp-display);font-size:clamp(32px,4.6vw,60px);font-weight:400;line-height:1.16;letter-spacing:.01em}
.gatherings-lead{margin:0;max-width:52em;font-size:13.5px;line-height:1.95}
.gatherings-lead a{color:var(--spire-cobalt);font-weight:700;text-underline-offset:3px}

.gatherings-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;padding-bottom:12px;border-bottom:1px solid var(--spire-line)}
.gatherings-section-head h2{margin:0;font-family:var(--spire-jp-display);font-size:clamp(22px,2.8vw,32px);font-weight:400}
.gatherings-section-head p{margin:0;color:var(--spire-muted);font-size:12.5px}

.gatherings-list{padding:clamp(32px,4vw,52px) 0}
.gathering{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:26px 0;border-bottom:1px solid var(--spire-line)}
.gathering-date{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;color:var(--spire-site-calendar);font-family:var(--spire-display);font-size:26px;letter-spacing:.02em}
.gathering-date span{color:var(--spire-muted);font-size:16px}
.gathering-copy h3{margin:8px 0 8px;font-family:var(--spire-jp-display);font-size:22px;font-weight:400}
.gathering-copy p{margin:0;font-size:13.5px;line-height:1.9}
.gathering-status{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid currentColor;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.06em}
.gathering-status--upcoming{color:var(--spire-site-calendar)}
.gathering-status--finished{color:var(--spire-muted)}
.gathering.is-finished .gathering-date{color:var(--spire-muted)}
.gathering-link{display:inline-flex;align-items:center;min-height:40px;margin-top:12px;padding:8px 16px;border:1px solid var(--spire-cobalt);border-radius:999px;color:var(--spire-cobalt);font-size:12.5px;font-weight:700;text-decoration:none}
.gathering-link:hover,.gathering-link:focus-visible{background:var(--spire-sky);outline:0}

.gatherings-note-section{padding:clamp(24px,3vw,40px) 0 0}
.gatherings-note{margin:20px 0 0;padding:0 0 0 1.3em;display:grid;gap:12px;font-size:13.5px;line-height:1.95}
.gatherings-note li{padding-left:4px}

@media(max-width:760px){
  .gathering{grid-template-columns:1fr;gap:10px}
  .gathering-date{font-size:22px}
}
