.staging-banner {
  border-bottom: 1px solid #614b20;
  background: #1d180d;
  color: var(--color-warning);
  font-size: .74rem;
}

.staging-banner .shell {
  min-height: 2rem;
  display: flex;
  gap: var(--space-3);
  align-items: center;
  justify-content: center;
}

.staging-banner span { color: #c8b98f; }
.site-header { top: 0; }

.nav-more { position: relative; }
.nav-more summary { color: var(--color-text-secondary); font-size: var(--step--1); font-weight: 680; list-style: none; }
.nav-more summary::-webkit-details-marker { display: none; }
.nav-more summary::after { margin-left: .35rem; color: var(--color-text-subtle); content: "▾"; }
.nav-more[open] summary, .nav-more summary:hover,
body:is([data-page="team"], [data-page="bewerben"], [data-page="faq"], [data-page="spielen"], [data-page="eltern"]) .nav-more summary { color: var(--color-text-primary); }
.nav-more-panel {
  position: absolute;
  top: calc(100% + 1.1rem);
  right: 0;
  min-width: 13rem;
  display: grid;
  gap: var(--space-1);
  padding: var(--space-2);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-elevated);
  box-shadow: var(--shadow-elevated);
}
.nav-more-panel a { padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); }
.nav-more-panel a:hover, .nav-more-panel a[aria-current="page"] { background: var(--color-surface-hover); }
.mobile-nav-divider { height: 1px; margin-block: var(--space-1); background: var(--color-border); }

.site-footer-home { padding-block: var(--space-16) var(--space-6); background: #07060a; }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: var(--space-8); }
.footer-brand p { max-width: 25rem; margin-block: var(--space-4); color: var(--color-text-subtle); font-size: var(--step--1); }
.footer-brand code { color: var(--color-gold); font-family: var(--font-mono); }
.footer-grid nav { display: grid; align-content: start; gap: var(--space-2); }
.footer-grid nav strong { margin-bottom: var(--space-2); color: var(--color-text-primary); font-size: var(--step--1); }
.footer-grid nav a { color: var(--color-text-subtle); font-size: var(--step--1); text-decoration: none; }
.footer-grid nav a:hover { color: var(--color-text-primary); }
.footer-bottom { display: flex; gap: var(--space-4); justify-content: space-between; margin-top: var(--space-12); padding-top: var(--space-4); border-top: 1px solid var(--color-border); color: var(--color-text-subtle); font-size: .72rem; }

.copy-toast { position: fixed; z-index: 50; right: var(--space-4); bottom: var(--space-4); max-width: calc(100% - 2rem); padding: var(--space-3) var(--space-4); border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: var(--color-surface-elevated); color: var(--color-text-primary); box-shadow: var(--shadow-elevated); opacity: 0; pointer-events: none; transform: translateY(1rem); transition: opacity var(--transition-fast), transform var(--transition-fast); }
.copy-toast.is-visible { opacity: 1; transform: translateY(0); }

.page-shell { min-height: 52vh; padding-block: var(--space-16); }
.page-intro { max-width: var(--content-reading); }
.page-intro h1 { margin-block: var(--space-3) var(--space-4); }
.page-placeholder { margin-top: var(--space-8); }

@media (max-width: 64rem) {
  .footer-grid { grid-template-columns: 1.5fr repeat(2, 1fr); }
  .footer-grid nav:last-child { grid-column: 2; }
}

@media (max-width: 48rem) {
  .staging-banner .shell { align-items: flex-start; flex-direction: column; gap: 0; padding-block: .35rem; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-brand { grid-column: 1 / -1; }
  .footer-grid nav:last-child { grid-column: auto; }
}

@media (max-width: 34rem) {
  .header-actions .status { display: none; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-grid nav:last-child { grid-column: auto; }
  .footer-bottom { align-items: flex-start; flex-direction: column; }
}
