/* ─────────────────────────────────────
   HEADER
   ───────────────────────────────────── */

#header,
#header .navbar,
nav.navbar,
.navbar-default {
  background-color: var(--rm-black) !important;
  border-bottom: 3px solid var(--rm-red) !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#navbar-top,
.navbar-secondary {
  background-color: #050504 !important;
  border-bottom: 1px solid var(--rm-border) !important;
  padding: 6px 0 !important;
}
#navbar-top a,
.region-secondary-menu a,
.region-top-header a {
  font-size: 10px !important;
  letter-spacing: 2px !important;
  color: var(--rm-muted) !important;
  font-family: 'IBM Plex Mono', monospace !important;
  text-decoration: none !important;
}
#navbar-top a:hover,
.region-secondary-menu a:hover { color: var(--rm-white) !important; }

/* Search box */
#navbar-top input[type="text"],
#navbar-top input[type="search"] {
  background: #1A1A1A !important;
  border: 1px solid #555 !important;
  border-radius: 0 !important;
  color: var(--rm-white) !important;
  font-family: 'IBM Plex Mono', monospace !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  padding: 8px 16px !important;
  width: 240px !important;
  height: 40px !important;
}
#navbar-top input[type="text"]::placeholder,
#navbar-top input[type="search"]::placeholder { color: #888 !important; }
#navbar-top input[type="text"]:focus,
#navbar-top input[type="search"]:focus { border-color: var(--rm-red) !important; outline: none !important; }

/* Search button */
#navbar-top .btn,
#navbar-top input[type="submit"] {
  background: var(--rm-red) !important;
  border: none !important;
  border-radius: 0 !important;
  color: var(--rm-white) !important;
  font-family: 'IBM Plex Mono', monospace !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  padding: 8px 20px !important;
  height: 40px !important;
  margin-left: 8px !important;
  cursor: pointer !important;
}
#navbar-top .btn:hover,
#navbar-top input[type="submit"]:hover { background: #be2018 !important; }

/* Logo */
.site-logo img,
.navbar-brand img,
.site-branding img { max-height: 85px !important; width: auto !important; }

/* Site name */
.site-name a,
.navbar-brand {
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 22px !important;
  letter-spacing: 5px !important;
  color: var(--rm-white) !important;
  text-decoration: none !important;
}
.site-name a:hover,
.navbar-brand:hover { color: var(--rm-red) !important; }

/* Branding block */
#header,
#navbar-main { padding-top: 0 !important; padding-bottom: 0 !important; }
.site-branding,
.block-system-branding-block {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 8px 0 !important;
}
.site-name { margin: 0 !important; padding: 0 !important; }
.site-logo { margin: 0 !important; padding: 0 !important; }

/* Primary nav */
#navbar-main .nav-link,
.region-primary-menu .nav-link {
  font-size: 11px !important;
  letter-spacing: 2px !important;
  color: var(--rm-muted) !important;
  font-family: 'IBM Plex Mono', monospace !important;
  padding: 8px 14px !important;
  background: transparent !important;
  transition: color .2s;
  text-decoration: none !important;
}
#navbar-main .nav-link:hover,
.region-primary-menu .nav-link:hover { color: var(--rm-white) !important; background: transparent !important; }
#navbar-main .nav-item.active .nav-link { color: var(--rm-white) !important; border-bottom: 1px solid var(--rm-red); }

/* Dropdowns */
.dropdown-menu {
  background-color: var(--rm-black) !important;
  border: 1px solid var(--rm-border) !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.dropdown-item {
  font-size: 11px !important;
  letter-spacing: 2px !important;
  color: var(--rm-muted) !important;
  font-family: 'IBM Plex Mono', monospace !important;
  padding: 10px 16px !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}
.dropdown-item:hover { background-color: var(--rm-border) !important; color: var(--rm-white) !important; }

/* Mobile */
.navbar-toggler { border: 1px solid var(--rm-border) !important; border-radius: 0 !important; }
.navbar-toggler-icon { filter: invert(1) !important; }
.navbar-collapse { background-color: var(--rm-black) !important; }

/* ─────────────────────────────────────
   FOOTER
   ───────────────────────────────────── */

#footer {
  background-color: var(--rm-black) !important;
  border-top: 3px solid var(--rm-red) !important;
  padding: 40px 0 32px !important;
  width: 100% !important;
}
#footer > .container,
#footer > .container-fluid,
#footer > div {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto !important;
  padding: 0 32px !important;
}
.region-footer-first,
.region-footer-second,
.region-footer-third,
.region-footer-fourth,
.region-footer-fifth { flex: 0 1 auto !important; }

#footer .site-name a,
#footer .navbar-brand {
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 20px !important;
  letter-spacing: 4px !important;
  color: var(--rm-white) !important;
  text-decoration: none !important;
}
#footer .site-name a:hover { color: var(--rm-red) !important; }
#footer .site-logo img { max-height: 32px !important; width: auto !important; }

#footer .menu,
#footer ul.nav,
#footer ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 20px !important;
  align-items: center !important;
}
#footer .menu a,
#footer ul li a {
  font-size: 10px !important;
  letter-spacing: 2px !important;
  color: var(--rm-muted) !important;
  text-decoration: none !important;
  font-family: 'IBM Plex Mono', monospace !important;
  transition: color .2s;
}
#footer .menu a:hover,
#footer ul li a:hover { color: var(--rm-white) !important; }

#footer .block-title,
#footer h2 {
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  color: var(--rm-amber) !important;
  margin-bottom: 12px !important;
  border: none !important;
}
#footer p {
  font-size: 10px !important;
  letter-spacing: 2px !important;
  color: var(--rm-muted) !important;
  margin: 0 !important;
  font-family: 'IBM Plex Mono', monospace !important;
}



@media (max-width: 768px) {
  #footer > .container,
  #footer > .container-fluid,
  #footer > div {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  #footer .menu,
  #footer ul.nav,
  #footer ul {
    justify-content: center !important;
  }

  .region-footer-first,
  .region-footer-second,
  .region-footer-third,
  .region-footer-fourth,
  .region-footer-fifth {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
}


#navbar-main .navbar-brand,
#navbar-main .site-branding,
.navbar .site-branding {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}

#header .navbar {
  min-height: 70px !important;
  display: flex !important;
  align-items: center !important;
}
