
  /* Site-wide: bold all navigation-bar text (weight only; font & size unchanged) */
  nav { font-weight: 700; }

  /* Modal overlay for census image */
  .vw-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
  }
  .vw-modal-content {
    background: #fff;
    border-radius: 12px;
    padding: 1.5rem;
    max-width: 80vw;
    width: 80vw;
    box-shadow: 0 4px 32px rgba(0,0,0,0.25);
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .vw-modal-close {
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    font-size: 2rem;
    color: #333;
    cursor: pointer;
    font-weight: bold;
    z-index: 1;
  }
  .vw-modal img {
    border-radius: 8px;
    max-width: 100%;
    height: auto;
  }
  @media (max-width: 600px) {
    .vw-modal-content {
      max-width: 98vw;
      width: 98vw;
      padding: 0.5rem;
    }
  }
  .news-card {
    font-family: Arial, sans-serif;
    max-width: 350px;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  }
  .news-card a { text-decoration: none; color: inherit; }
  .news-card img { width: 100%; height: 200px; object-fit: cover; display: block; }
  .news-card img:hover { opacity: 0.85; }
  .news-card-body { padding: 16px; padding-top: 24px; text-align: right; }
  .card-body { text-align: left; }
  .news-card-title { font-size: 0.75rem; font-weight: bold; color: #1a1a1a; margin: 0 0 12px 0; line-height: 1.4; }
  .news-card-title:hover { color: #0056b3; }
  .btn-read-all {
    display: block; margin-left: auto; width: fit-content;
    background-color: #0056b3; color: #fff !important;
    padding: 4px 10px; border-radius: 4px; font-size: 0.9rem;
    transition: background-color 0.2s;
  }
  .btn-read-all:hover { background-color: #003d80; }

  /* SuperSecretStash claim panel. Hidden by an INLINE style in the HTML until
     /css/vwcards.js reveals it — never hide it from here: this file has no
     cache-buster, so a stale copy would expose the panel site-wide. */
  .stash-claim {
    font-family: Arial, sans-serif; max-width: 350px;
    border: 1px solid #d6c48a; border-radius: 8px; background: #fffdf5;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1); padding: 12px; text-align: center;
  }
  .stash-claim-title { font-size: 0.95rem; font-weight: bold; color: #1a1a1a; margin-bottom: 8px; }
  .stash-claim-art { width: 150px; max-width: 60%; height: auto; border-radius: 6px; display: inline-block; }
  .stash-claim-btn {
    display: block; width: fit-content; margin: 10px auto 4px;
    background-color: #b8912b; color: #fff !important;
    padding: 6px 14px; border-radius: 4px; font-size: 0.9rem;
    text-decoration: none; transition: background-color 0.2s;
  }
  .stash-claim-btn:hover { background-color: #8f7020; }
  .stash-claim-note { font-size: 0.7rem; color: #666; }
  .stash-claim-game {
    font-size: 0.72rem; font-weight: bold; letter-spacing: 1.5px; text-transform: uppercase;
    color: #8f7020; border-bottom: 1px solid #e8dcb4; padding-bottom: 6px; margin-bottom: 8px;
  }
  .stash-claim-text { font-size: 0.78rem; color: #444; line-height: 1.45; margin: 8px 4px 2px; }
  .stash-claim-btn.stash-claim-redeem { background-color: #2b3a8f; }
  .stash-claim-btn.stash-claim-redeem:hover { background-color: #1f2b6b; }

  @media (max-width: 768px) {
  .hide-on-mobile {
    display: none !important;
  }
}

