/* Open / closed lines and closure notices filled in by js/store-hours.js (2026-10-13). Navy pages, cream text. */
.hours-state::before { content: ''; display: inline-block; width: 0.55em; height: 0.55em; border-radius: 50%; margin-right: 0.45em; vertical-align: 0.08em; }
.hours-state.is-open::before { background: #7fd18b; }
.hours-state.is-closed::before { background: #e8a0a0; }
.now { margin: -0.5rem 0 1rem; font-size: 0.95rem; }
/* Upcoming closures: a mustard banner (the brick-mold mustard) with navy text, larger and bold so it stands out */
.closures, .hours-notices { list-style: none; margin: 0 0 1.25rem; padding: 0.7rem 1rem 0.7rem 2.6rem; position: relative;
  background: #e3b65a; color: #1c2333; border-radius: 4px; font-weight: 700; font-size: 1.15rem; line-height: 1.35;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35); text-align: left; }
.closures::before, .hours-notices::before { content: "!"; position: absolute; left: 0.8rem; top: 0.75rem; width: 1.2rem; height: 1.2rem; border-radius: 50%;
  background: #1c2333; color: #e3b65a; font-size: 0.85rem; line-height: 1.2rem; text-align: center; }
.closures li + li, .hours-notices li + li { margin-top: 0.3rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* Home page: one line per store at the foot of the doorway */
#storeStatus { font-size: max(13px, 2.1cqw); color: #f4f2ec; }   /* same cream as the 'artisan' headline, full strength (Jeff, 2026-10-14) */
#storeStatus .hours-row { margin: 0.15em 0; }
#storeStatus .hours-state { display: inline-block; }
#storeStatus .hours-store { text-transform: uppercase; letter-spacing: 0.14em; margin-right: 0.6em; }
#storeStatus .hours-row.is-open .hours-state::before { background: #7fd18b; }
#storeStatus .hours-row.is-closed .hours-state::before { background: #e8a0a0; }
#storeStatus .hours-state::before { content: ''; display: inline-block; width: 0.55em; height: 0.55em; border-radius: 50%; margin-right: 0.45em; vertical-align: 0.08em; }
#storeStatus .hours-notices { display: inline-block; margin: 0 0 0.8em; font-size: max(15px, 2.4cqw); }
/* Each closure: "Both stores closed" on its own line, the date and reason below */
.notice-head, .notice-detail { display: block; }
.notice-detail { font-weight: 400; }
