/* ── Footer layout ── */
.rb-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding: 1.2rem 0;
}

/* Brand (left) */
.rb-footer__brand {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.rb-footer__logo-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: inherit;
  text-decoration: none;
}

.rb-footer__logo-link:hover {
  opacity: 0.85;
}

/* Constrain header logo and prevent color inversion */
.md-header .md-logo img,
.md-nav .md-logo img {
  height: 24px;
  width: 24px;
  object-fit: contain;
  filter: none !important;
}

/* Prevent footer logo color inversion */
.rb-footer__logo {
  height: 20px;
  width: 20px;
  filter: none !important;
}

.rb-footer__name {
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.rb-footer__motto {
  margin: 0;
  font-size: 0.72rem;
  opacity: 0.55;
  line-height: 1.4;
}

/* Legal (right) */
.rb-footer__legal {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.3rem;
}

.rb-footer__links {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.75rem;
}

.rb-footer__links a {
  color: inherit;
  opacity: 0.65;
  text-decoration: none;
}

.rb-footer__links a:hover {
  opacity: 1;
  text-decoration: underline;
}

.rb-footer__sep {
  opacity: 0.35;
}

.rb-footer__copyright {
  margin: 0;
  font-size: 0.68rem;
  opacity: 0.45;
}

.rb-footer__copyright a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.rb-footer__copyright a:hover {
  opacity: 0.85;
}

/* Responsive: stack on small screens */
@media (max-width: 600px) {
  .rb-footer {
    flex-direction: column;
    align-items: flex-start;
  }
  .rb-footer__legal {
    align-items: flex-start;
  }
}
