/* Header-only prominence: preserve the original logo and never crop it. */
@layer components {
.site-header .brand {
  position: relative;
  isolation: isolate;
  flex: 0 0 auto;
  min-width: 172px;
  min-height: 56px;
  gap: 12px;
  text-decoration: none;
}
.site-header .brand > img {
  flex: 0 0 56px !important;
  width: 56px !important;
  height: 56px !important;
  object-fit: contain !important;
  object-position: center !important;
  position: relative;
  z-index: 1;
}
.site-header .brand-wordmark { position: relative; z-index: 1; gap: 4px; }
.site-header .brand-wordmark b {
  font-size: 16px;
  font-weight: 850;
  letter-spacing: .17em;
  color: #fff;
}
.site-header .brand-wordmark small { font-size: 9px; font-weight: 800; letter-spacing: .26em; color: #f1f4f4; }
.site-header .brand::before { content: none; animation: none; }
/* A broad, slow yellow pass with a readable center hold; no glow or scaling. */
@supports (background-clip: text) or (-webkit-background-clip: text) {
  .site-header .brand-wordmark b {
    background: linear-gradient(110deg, #fff 30%, #e6ff00 38%, #e6ff00 62%, #fff 70%);
    background-size: 400% 100%;
    background-position: 100% 0;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    animation: rizen-brand-sheen 8s ease-in-out infinite;
  }
}
@keyframes rizen-brand-sheen {
  0% { background-position: 100% 0; }
  40%, 55% { background-position: 50% 0; }
  95%, 100% { background-position: 0% 0; }
}
@media (max-width: 900px) {
  .site-header .brand { min-width: 148px; min-height: 48px; gap: 10px; }
  .site-header .brand > img { flex-basis: 48px !important; width: 48px !important; height: 48px !important; }
  .site-header .brand-wordmark b { font-size: 14px; }
  .site-header .brand-wordmark small { font-size: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-header .brand-wordmark b { animation: none; background: none; color: #fff; }
}
}
