/* Temporary festival notice; the normal restaurant hours remain unchanged. */
.zaika-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 22px max(24px, calc((100vw - 1200px) / 2));
  background: #6b1f2b;
  color: #f4e9d7;
  border-bottom: 4px solid #c89b3c;
  font-family: "Source Sans 3", Arial, sans-serif;
}
.zaika-notice[hidden] { display: none; }
.zaika-notice-copy p { margin: 0; line-height: 1.45; }
.zaika-notice-copy p + p { margin-top: 5px; }
#zaika-notice-title { font-size: 1.3rem; }
#zaika-notice-title strong { letter-spacing: .025em; }
#zaika-notice-title strong span { color: #e4bd61; }
.zaika-notice-location { font-size: .95rem; }
.zaika-notice-actions { display: flex; flex-wrap: wrap; gap: 12px; flex-shrink: 0; }
.zaika-notice-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 10px 16px;
  color: #f4e9d7;
  border: 1px solid #e4bd61;
  font-weight: 650;
  text-decoration: none;
}
.zaika-notice-actions a:hover { background: #551822; }
.zaika-notice-actions a:focus-visible { outline: 3px solid #f4e9d7; outline-offset: 4px; }
.zaika-notice-actions .zaika-notice-call { flex-direction: column; gap: 0; background: #e4bd61; color: #32151b; }
.zaika-notice-call span { font-size: .9rem; }
.zaika-notice-actions .zaika-notice-call:hover { background: #f0d08c; }
@media (max-width: 1020px) {
  .zaika-notice { align-items: flex-start; flex-direction: column; gap: 15px; }
}
@media (max-width: 520px) {
  .zaika-notice { padding: 20px 22px; }
  .zaika-notice-actions { width: 100%; }
  .zaika-notice-actions a { flex: 1; }
}
