/* BlockMastery – gemeinsames Menü & Fußzeile (identisch auf allen Seiten).
   Eigenständige Werte, damit die Tool-Seiten (Templates, GeoMapping) exakt gleich aussehen wie die Startseite. */
.bmc-header, .bmc-footer, .bmc-header *, .bmc-footer * { box-sizing: border-box; margin: 0; padding: 0; }
.bmc-header, .bmc-footer {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  line-height: 1.6; -webkit-font-smoothing: antialiased; color: #2d2a26;
}
.bmc-header a, .bmc-footer a { text-decoration: none; color: inherit; }
.bmc-container { max-width: 1200px; margin: 0 auto; padding: 0 1rem; }

.bmc-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  background: rgba(250, 248, 245, 0.95); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  border-bottom: 1px solid #e0dbd3; height: auto; display: block;
}
.bmc-header-inner { display: flex; align-items: center; justify-content: space-between; height: 64px; }
.bmc-logo { display: flex; align-items: center; gap: 0.75rem; }
.bmc-logo-icon {
  width: 40px; height: 40px; background: #3d8b5f; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  color: #ffffff; font-weight: 700; font-size: 1.125rem; line-height: 1;
}
.bmc-logo-text { font-size: 1.25rem; font-weight: 600; color: #2d2a26; }
.bmc-nav { display: none; }
.bmc-nav-link {
  padding: 0.5rem 1rem; border-radius: 0.5rem; font-size: 0.875rem; font-weight: 500;
  color: #3b3530; transition: all 0.2s;
}
.bmc-nav-link:hover { color: #2d2a26; background: #f0ebe3; }
.bmc-nav-link.active { color: #3d8b5f; background: rgba(61, 139, 95, 0.1); }
.bmc-menu-btn { display: block; padding: 0.5rem; background: none; border: none; cursor: pointer; color: #2d2a26; }
.bmc-mobile-nav { display: none; padding-bottom: 1rem; }
.bmc-mobile-nav.open { display: block; }
.bmc-mobile-link {
  display: block; padding: 0.75rem 1rem; border-radius: 0.5rem; font-size: 0.875rem; font-weight: 500; color: #3b3530;
}
.bmc-mobile-link:hover, .bmc-mobile-link.active { color: #3d8b5f; background: rgba(61, 139, 95, 0.1); }
@media (min-width: 768px) {
  .bmc-nav { display: flex; align-items: center; gap: 0.25rem; }
  .bmc-menu-btn, .bmc-mobile-nav, .bmc-mobile-nav.open { display: none; }
}

/* Tool-Seiten: Platz für die fixierte Kopfzeile */
body.bmc-tool { padding-top: 64px; }

.bmc-footer { background: #f0ebe3; border-top: 1px solid #e0dbd3; padding: 3rem 0; margin-top: 5rem; }
.bmc-footer-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 768px) { .bmc-footer-grid { grid-template-columns: 2fr 1fr 1fr; } }
.bmc-footer-brand p { font-family: inherit; line-height: 1.6; color: #3b3530; max-width: 300px; margin-top: 1rem; font-size: 1rem; }
.bmc-footer h4 { font-family: inherit; font-size: 1rem; font-weight: 700; line-height: 1.2; margin-bottom: 1rem; color: #2d2a26; }
.bmc-footer ul { list-style: none; }
.bmc-footer li { margin-bottom: 0.5rem; }
.bmc-footer ul a { color: #3b3530; font-size: 0.875rem; }
.bmc-footer ul a:hover { color: #3d8b5f; }
.bmc-footer-bottom {
  border-top: 1px solid #e0dbd3; margin-top: 2rem; padding-top: 2rem;
  text-align: center; font-size: 0.875rem; color: #3b3530;
}
