/* Page-specific visual frame for #mfz-berlin-hub only. */
#mfz-berlin-hub {
  --mz-ink: #17324a;
  --mz-ink-2: #244963;
  --mz-blue: #2d7fb4;
  --mz-blue-soft: #e9f4fa;
  --mz-green: #69c98b;
  --mz-green-dark: #246b46;
  --mz-green-soft: #eaf7ef;
  --mz-soft: #f5f9fb;
  --mz-line: #d7e5ec;
  --mz-card: #ffffff;
  --mz-shadow: 0 18px 45px rgba(23,50,74,.10);
  background: #fff;
}

#mfz-berlin-hub .mz-brandbar {
  min-height: 82px;
  padding: 10px 0;
  border-bottom: 1px solid var(--mz-line);
}

#mfz-berlin-hub .mz-brand img {
  width: 68px;
  height: 68px;
}

#mfz-berlin-hub .mz-nav a {
  border-color: #cfe0e8;
  background: #fff;
  color: var(--mz-ink);
}

#mfz-berlin-hub .mz-nav a:hover,
#mfz-berlin-hub .mz-nav a:focus-visible {
  background: var(--mz-blue-soft);
  border-color: #a9cede;
}

#mfz-berlin-hub .mz-hero {
  margin-top: 0;
  padding: 46px 0 68px;
  position: relative;
}

#mfz-berlin-hub .mz-hero::before {
  content: "";
  position: absolute;
  inset: 0 calc(50% - 50vw);
  z-index: -1;
  background:
    radial-gradient(circle at 12% 18%, rgba(45,127,180,.10), transparent 30%),
    radial-gradient(circle at 88% 76%, rgba(105,201,139,.12), transparent 31%),
    linear-gradient(135deg, #f7fbfd 0%, #f3faf6 100%);
}

#mfz-berlin-hub .mz-eyebrow {
  background: var(--mz-blue-soft);
  color: #205b83;
}

#mfz-berlin-hub .mz-page-title {
  margin: 14px 0 8px;
  color: var(--mz-ink);
  font-size: clamp(2.65rem, 5.1vw, 4.9rem);
  line-height: .98;
  letter-spacing: -.055em;
  font-weight: 800;
}

#mfz-berlin-hub .mz-hero-kicker {
  margin: 0 0 18px;
  color: var(--mz-ink-2);
  font-size: clamp(1.35rem, 2.3vw, 2.15rem);
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: -.025em;
}

#mfz-berlin-hub .mz-btn-primary {
  background: var(--mz-ink);
  border-color: var(--mz-ink);
  color: #fff;
}

#mfz-berlin-hub .mz-btn-primary:hover,
#mfz-berlin-hub .mz-btn-primary:focus-visible {
  background: #0e273b;
  border-color: #0e273b;
}

#mfz-berlin-hub .mz-btn-accent {
  background: var(--mz-green-soft);
  border-color: #b8e2c7;
  color: var(--mz-green-dark);
}

#mfz-berlin-hub .mz-photo img {
  border: 1px solid rgba(23,50,74,.08);
}

#mfz-berlin-hub .mz-note {
  background: #f6fbf8;
  border-color: #bee3cc;
  color: var(--mz-green-dark);
  transform: rotate(-1deg);
}

#mfz-berlin-hub .mz-section:nth-of-type(even) {
  background: #fbfdfe;
}

#mfz-berlin-hub .mz-band {
  background: linear-gradient(135deg, #17324a 0%, #244963 100%);
}

#mfz-berlin-hub .mz-aside {
  background: var(--mz-green-soft);
  border-color: #c6e7d1;
}

#mfz-berlin-hub .mz-final {
  background: linear-gradient(135deg, var(--mz-blue-soft), var(--mz-green-soft));
  border: 1px solid #d4e7e0;
}

@media (max-width: 620px) {
  #mfz-berlin-hub .mz-brandbar {
    min-height: 72px;
  }
  #mfz-berlin-hub .mz-brand img {
    width: 58px;
    height: 58px;
  }
  #mfz-berlin-hub .mz-hero {
    padding-top: 30px;
  }
  #mfz-berlin-hub .mz-page-title {
    font-size: clamp(2.25rem, 11vw, 3.2rem);
  }
}
