/* ============================================================
   BB_card_grid  v1.0
   Overline + Headline + Intro + Karten-Grid (Repeater) + Subline
   OHNE blaue Karten-Oberkante.
   ------------------------------------------------------------
   Tweak-Werte (oben in .bb-cg anpassbar):
   --bb-cg-pad-y      vertikales Sektions-Padding    (Default 100px)
   --bb-cg-max        Container-Breite               (Default 1200px)
   --bb-cg-text-max   max. Breite Intro              (Default 960px)
   --bb-cg-cols       Anzahl Spalten                 (Default 2)
   --bb-cg-gap        Abstand zwischen Karten        (Default 24px)
   Headline-Gewicht   siehe .bb-cg__headline font-weight (Default 400)
   ============================================================ */

.bb-cg {
  --bb-cg-pad-y: 100px;
  --bb-cg-max: 1200px;
  --bb-cg-text-max: 960px;
  --bb-cg-cols: 2;
  --bb-cg-gap: 24px;

  --bb-cg-accent: #0b5fa5;
  --bb-cg-navy:   #0b1f3a;
  --bb-cg-slate:  #5a6776;
  --bb-cg-line:   #e6e8eb;

  width: 100%;
  max-width: var(--bb-cg-max);
  margin: 0 auto;
  padding: var(--bb-cg-pad-y) 0;
  box-sizing: border-box;
}

/* Overline */
.bb-cg__overline {
  margin: 0 0 20px;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--bb-cg-accent);
}

/* Headline */
.bb-cg__headline {
  margin: 0 0 24px;
  font-family: 'Poppins', sans-serif;
  font-weight: 400;            /* Tweak: 400–600 – an Ocean-Vorlage angleichen */
  font-size: 40px;
  line-height: 1.2;
  color: var(--bb-cg-navy);
}

/* Intro */
.bb-cg__intro {
  max-width: var(--bb-cg-text-max);
  margin: 0 0 36px;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--bb-cg-slate);
}
.bb-cg__intro p { margin: 0 0 1em; }
.bb-cg__intro p:last-child { margin-bottom: 0; }

/* Karten-Grid */
.bb-cg__grid {
  display: grid;
  grid-template-columns: repeat(var(--bb-cg-cols), 1fr);
  gap: var(--bb-cg-gap);
}
.bb-cg__card {
  background: #f5f6f7;
  border: 1px solid #dce0e5;
  border-radius: 2px;
  padding: 28px 30px;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: var(--bb-cg-slate); }
}
.bb-cg__card p { margin: 0; }

/* Subline (kursiv) */
.bb-cg__closing {
  margin: 36px 0 0;
  font-family: 'Inter', sans-serif;
  font-style: italic;
  font-size: 15px;
  line-height: 1.6;
  color: var(--bb-cg-slate);
}
.bb-cg__closing p { margin: 0; }

/* Responsive */
@media (max-width: 768px) {
  .bb-cg { --bb-cg-pad-y: 60px; --bb-cg-cols: 1; }
  .bb-cg__headline { font-size: 30px; }
}

/* zusätzlich: */
.bb-cg__card p { margin: 0; color: var(--bb-cg-slate); }
