/**
 * Zollner CI — Olivero-basierte Overrides.
 * CI: Primär-Rot #e3000f, Body #4F4F4E, Font Noto Sans.
 */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@300;400;500;600;700&display=swap');

:root {
  --zollner-red: #e3000f;
  --zollner-red-hover: #ba000d;
  --zollner-gray: #4F4F4E;
  --zollner-bg: #ffffff;
}

body, html {
  font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: var(--zollner-gray);
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans", sans-serif !important;
  color: var(--zollner-gray);
  font-weight: 600;
}

/* Header: weiß, roter Bottom-Accent */
.site-header,
.site-header__inner,
.site-header__fixable {
  background: var(--zollner-bg) !important;
  border-bottom: 3px solid var(--zollner-red) !important;
}

/* Olivero-blaues Header-Initial durch Zollner-Rot ersetzen */
.site-header__initial,
.sticky-header-toggle {
  background: var(--zollner-red) !important;
}

/* Site-Branding (Logo links) */
.site-branding {
  background: transparent !important;
}
.site-branding__logo {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
}
.site-branding__logo img {
  display: block !important;
  width: auto !important;
  height: 48px !important;
  max-width: none !important;
}
.site-branding__text,
.site-branding__name {
  position: relative;
  z-index: 2;
}
.site-branding__name a {
  color: var(--zollner-gray) !important;
  text-decoration: none;
}

/* Primäre Nav */
.primary-nav__menu-item > a,
.primary-nav__menu-link {
  color: var(--zollner-gray) !important;
  font-weight: 500;
}
.primary-nav__menu-item > a:hover,
.primary-nav__menu-link:hover,
.primary-nav__menu-link--is-currently-active,
.primary-nav__menu-link.is-active {
  color: var(--zollner-red) !important;
  border-bottom-color: var(--zollner-red) !important;
}

/* Links */
a {
  color: var(--zollner-red);
}
a:hover {
  color: var(--zollner-red-hover);
}

/* Buttons */
.button,
button.button,
input[type="submit"].button,
.form-submit,
.button--primary {
  background-color: var(--zollner-red) !important;
  border-color: var(--zollner-red) !important;
  color: #fff !important;
}
.button:hover,
.form-submit:hover {
  background-color: var(--zollner-red-hover) !important;
  border-color: var(--zollner-red-hover) !important;
}

/* Breadcrumb */
.breadcrumb a {
  color: var(--zollner-red);
}

/* Page title mit roter Akzent-Linie */
.page-title {
  border-bottom: 2px solid var(--zollner-red);
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
}

/* Login-Screen (/welcome): Drupal-Chrome komplett raus */
body.zollner-login-body {
  margin: 0;
  padding: 0;
  background: #f5f5f5;
}
body.zollner-login-body #block-zollner-portal-page-title,
body.zollner-login-body #block-zollner-portal-breadcrumb,
body.zollner-login-body #block-zollner-portal-messages {
  display: none;
}
body.zollner-login-body .region--content,
body.zollner-login-body .zollner-login-screen {
  padding: 0;
  margin: 0;
  max-width: none;
}

/* Language Switcher (secondary_menu Region, neben Account-Menü) */
.language-switcher-language-url {
  margin: 0;
  padding: 0;
}
.language-switcher-language-url .links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.language-switcher-language-url .links li + li::before {
  content: '|';
  color: #ccc;
  margin-right: 0.5rem;
}
.language-switcher-language-url .language-link {
  font-size: 0.85rem;
  font-weight: 500;
  text-decoration: none;
  color: var(--zollner-gray);
  text-transform: uppercase;
}
.language-switcher-language-url .language-link.is-active,
.language-switcher-language-url li.is-active .language-link {
  color: var(--zollner-red);
  font-weight: 700;
}
