/* Shared reading contrast and responsive navigation. */
body { --gold-deep:#806018; --muted:#665B71; }
/* Keep the header legible and its menu reachable on narrow screens. */
@media(max-width:980px) {
  .topbar .topbar-meta a.hide-sm:not([href^="mailto:"]) { display:none; }
  .topbar .motto { white-space:nowrap; }
}
@media(max-width:760px) {
  .topbar .topbar-meta:first-child { display:none; }
  .topbar .container { justify-content:center; }
}
@media(max-width:380px) {
  .site-header .container { padding-inline:1rem; }
  .nav { gap:.5rem; }
  .nav-toggle { flex-shrink:0; width:44px; }
  .brand { min-width:0; gap:.6rem; }
  .brand .medallion { width:34px; height:34px; }
  .brand-text .b-main { font-size:.9rem; }
  .brand-text .b-sub { font-size:.48rem; letter-spacing:.05em; }
}
/* Let calendar details wrap within the card on narrow phones. */
@media(max-width:600px) {
  #events-list { grid-template-columns:minmax(0,1fr); }
  #events-list > *, #events-list .event > * { min-width:0; }
  #events-list .event { grid-template-columns:minmax(0,1fr); }
  #events-list .section-head { width:100%; max-width:100%; }
  #events-list .section-head .eyebrow { display:flex; }
  #events-list .ev-meta span { display:block; }
  #events-list .ev-meta svg { display:inline-block; vertical-align:-.15em; margin-right:.5rem; }
}
