﻿/* =========================================================
   BRG14 BASE
   ---------------------------------------------------------
   Echtes Grundsystem:
   Farben, Karten, Grids, Buttons, Links, Utilities

   ZustÃ¤ndig fÃ¼r:
   - globale Designvariablen
   - Kartenbasis
   - globale Gridbasis
   - Buttons
   - Utilities
   - globale Portraitbasis
   - globaler Standardabstand vor dem Footer
   - Kadence-Layoutkorrektur fÃ¼r die Startseite

   NICHT zustÃ¤ndig fÃ¼r:
   - konkrete Seitenlayouts
   - Startseiten-Design
   - MenÃ¼logik
   - Footerlayout
   - Modulspezifika
   - globale Typografie
   - Listen
   - Kicker / Subtitles
   ========================================================= */


/* =========================================================
   DESIGN-GRUNDWERTE
   ========================================================= */

:root {

  /* Farben */
  --brg14-blue: #2E5D8E;
  --brg14-text: #2C2C2A;
  --brg14-muted: #5A6070;
  --brg14-border: #B1BCCB;
  --brg14-white: #FFFFFF;
  --brg14-bg-soft: #F8FAFC;

  /* Karten */
  --brg14-card-radius: 16px;
  --brg14-card-padding: 28px;
  --brg14-card-padding-mobile: 22px;
  --brg14-card-gap: 24px;
  --brg14-card-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
}


/* =========================================================
   STANDARDSEITEN & BEITRÃ„GE:
   Abstand vor Footer
   ---------------------------------------------------------
   Die Startseite wird bewusst ausgeschlossen.
   ========================================================= */

body.page:not(.home) .entry-content,
body.single-post .entry-content {
  padding-bottom: 56px;
}


/* =========================================================
   KADENCE-KORREKTUR: STARTSEITE
   ---------------------------------------------------------
   Die Startseite arbeitet mit Fullwidth-BlÃ¶cken.
   Kadence setzt auf mehreren Containern eigene AbstÃ¤nde.
   Diese werden nur auf der Homepage neutralisiert.
   ========================================================= */

body.home .content-area {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.home .site-main,
body.home .content-wrap,
body.home .entry-content-wrap,
body.home .entry-content {
  margin-top: 0 !important;
  margin-bottom: 0 !important;

  padding-top: 0 !important;
  padding-bottom: 0 !important;
}


/* =========================================================
   KARTENBASIS
   ---------------------------------------------------------
   Neue Hauptklasse:
   - .brg14-card
   ========================================================= */

.brg14-card {
  padding: var(--brg14-card-padding);

  border: 2px solid var(--brg14-border);
  border-radius: var(--brg14-card-radius);

  background: var(--brg14-white);
  color: #071E42;

  box-shadow: var(--brg14-card-shadow);
}

.brg14-card > :first-child {
  margin-top: 0;
}

.brg14-card > :last-child {
  margin-bottom: 0;
}


/* =========================================================
   KARTENVARIANTEN
   ---------------------------------------------------------
   Diese Varianten werden zusÃ¤tzlich zur Kartenbasis gesetzt.

   Beispiele:
   <article class="brg14-card brg14-card-soft">
   <article class="brg14-card brg14-card-flat">
   <article class="brg14-card brg14-card-compact">
   ========================================================= */

.brg14-card-soft {
  background: var(--brg14-bg-soft);
}

.brg14-card-flat {
  box-shadow: none;
}

.brg14-card-compact {
  padding: 20px;
}

.brg14-card-highlight {
  border-color: #F0C98A;

  background:
    linear-gradient(
      to bottom,
      #FFF5E8,
      #FFF0D9
    );
}


/* =========================================================
   KARTENPoppinsNE ÃœBERSCHRIFTEN
   ---------------------------------------------------------
   Nur Grundlogik fÃ¼r Karten.
   Feine AbstÃ¤nde in Personen-/Kontaktkarten liegen in
   sonderseiten.css.
   ========================================================= */

.brg14-card h2,
.brg14-card h3 {
  margin-top: 0;
  margin-bottom: 8px;

  color: #071E42;

}






/* =========================================================
   STANDARD-GRIDS
   ---------------------------------------------------------
   Globale Grid-Basis fÃ¼r Inhaltsseiten und Komponenten.

   Hauptklassen:
   - .brg14-grid
   - .brg14-grid-1
   - .brg14-grid-2
   - .brg14-grid-3
   - .brg14-grid-4
   - .brg14-grid-auto
   ========================================================= */

.brg14-grid,
.brg14-grid-1,
.brg14-grid-2,
.brg14-grid-3,
.brg14-grid-4,
.brg14-grid-auto {
  display: grid;
  gap: var(--brg14-card-gap);

  width: 100%;
}

.brg14-grid-1 {
  grid-template-columns: 1fr;
}

.brg14-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.brg14-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.brg14-grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.brg14-grid-auto {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
/* =========================================================
   KONTAKT-INFOS
   ---------------------------------------------------------
   Sachliche Kontaktinformationen.
   Meta-Typografie selbst liegt in typography.css.
   ========================================================= */

.brg14-contact-info {
  color: var(--brg14-text);

}


/* =========================================================
   BUTTONS
   ---------------------------------------------------------
   Globale Buttonbasis.

   Verwendung:
   <a class="brg14-button brg14-button-primary">
   <a class="brg14-button brg14-button-secondary">
   ========================================================= */

.brg14-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  min-height: 36px;
  padding: 7px 18px;

  border: 1px solid rgba(7, 30, 66, 0.40);
  border-radius: 8px;


  text-decoration: none !important;

  cursor: pointer;

  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
}

.brg14-button:hover {
  transform: translateY(-1px);

  text-decoration: none !important;
}

.brg14-button-primary {
  background: #071E42;
  color: #FFFFFF;
}

.brg14-button-primary:hover {
  border-color: #2957A3;
  background: #2957A3;
  color: #FFFFFF;
}

.brg14-button-secondary {
  border-color: rgba(7, 30, 66, 0.40);

  background: #FFFFFF;
  color: #071E42;
}

.brg14-button-secondary:hover {
  border-color: #2957A3;
  background: #2957A3;
  color: #FFFFFF;
}


/* =========================================================
   UTILITIES
   ---------------------------------------------------------
   Kleine Hilfsklassen fÃ¼r wiederkehrende Situationen.
   Sparsam verwenden.
   ========================================================= */

.brg14-text-center {
  text-align: center;
}

.brg14-text-muted {
  color: var(--brg14-muted);
}

.brg14-fullwidth {
  width: 100vw;

  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.brg14-no-margin {
  margin: 0 !important;
}

.brg14-no-padding {
  padding: 0 !important;
}


/* =========================================================
   RESPONSIVE BASIS
   ========================================================= */

@media (max-width: 980px) {

  .brg14-grid-2,
  .brg14-grid-3,
  .brg14-grid-4 {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 640px) {

  .brg14-card {
    padding: var(--brg14-card-padding-mobile);
  }

  .brg14-card-compact {
    padding: 18px;
  }
}
