/* =================================================================
   einsatzgebiete-fixes.css   (v4-Korrekturen)
   Robby's Allroundservice · Einsatzgebiete-Landingpages

   WICHTIG: Diese Datei NACH "einsatzgebiete.css" einbinden!
   Layout -> CSS-Dateien -> Reihenfolge:
     1) einsatzgebiete.css
     2) einsatzgebiete-fixes.css   (steht darunter = höhere Priorität)

   NEU in v4: Die linke Kontaktspalte wird STRUKTURELL angesprochen
   (erste Spalte der Grid-Zeile), weil die Klasse "eg-contact" von
   Contao nicht zuverlässig auf die Spalte ausgegeben wird.
   -> Sticky funktioniert jetzt auch OHNE die eg-contact-Klasse.
   ================================================================= */


/* ---------- 1) H1 IN DER BLAUEN HERO-BOX ---------- */
#eg-page .eg-hero {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
#eg-page .eg-hero__title {
  font-family: inherit !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-weight: 700 !important;
  font-size: clamp(1.45rem, 3.4vw, 2.05rem) !important;
  line-height: 1.25 !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.18);
  word-break: break-word;
  hyphens: auto;
}


/* ---------- 2) BADGES JE NACH HINTERGRUND ---------- */
#eg-page .eg-badges {
  color: #33475b !important;
  font-size: 0.95rem;
  line-height: 1.55;
}
#eg-page .eg-hero .eg-badges {
  color: #cfe0f5 !important;
}


/* ---------- 3) SECONDARY-BUTTON MIT FÜLLUNG ---------- */
#eg-page .eg-btn--secondary,
#eg-page .eg-final .eg-btn--secondary {
  background: #ffffff !important;
  color: var(--eg-blue) !important;
  border: 2px solid var(--eg-blue) !important;
}
#eg-page .eg-btn--secondary:hover,
#eg-page .eg-final .eg-btn--secondary:hover {
  background: var(--eg-blue) !important;
  color: #ffffff !important;
}


/* =================================================================
   4) KONTAKTSPALTE: STRUKTURELL ANSPRECHEN
   Die erste Spalte innerhalb der Grid-Zeile ist die Kontaktspalte.
   Struktur laut DevTools:
     .ce_bs_gridStart.row  (flex-Container)
        > div:first-child   -> Kontaktspalte (col-lg-3)
        > .ce_bs_gridSeparator -> Hauptspalte (col-lg-9)
   Zusätzlich .eg-contact als Fallback, falls die Klasse doch greift.
   ================================================================= */

/* Flex-Zeile: Spalten oben ausrichten (nicht strecken) */
#eg-page .ce_bs_gridStart.row {
  align-items: flex-start;
}

/* --- Karten-Optik + kompakte Buttons für die Kontaktspalte --- */
#eg-page .ce_bs_gridStart.row > div:first-child,
#eg-page .eg-contact {
  background: #fff;
  border: 1px solid var(--eg-border);
  border-radius: var(--eg-radius);
  padding: 1.1rem 1.1rem 1.25rem;
  box-shadow: var(--eg-shadow);
}

#eg-page .ce_bs_gridStart.row > div:first-child .eg-cta,
#eg-page .eg-contact .eg-cta {
  flex-direction: column;
  gap: 0.5rem;
  margin: 0.75rem 0;
}
#eg-page .ce_bs_gridStart.row > div:first-child .eg-btn,
#eg-page .eg-contact .eg-btn {
  display: block;
  width: 100%;
  padding: 0.6rem 0.9rem !important;
  font-size: 0.95rem !important;
  line-height: 1.3;
}


/* =================================================================
   5) STICKY – jetzt auf die erste Spalte STRUKTURELL angewandt
   ================================================================= */
#eg-page .ce_bs_gridStart.row > div:first-child,
#eg-page .eg-contact {
  position: -webkit-sticky;   /* Safari */
  position: sticky;
  top: 1rem;                  /* Abstand oben; ggf. an fixen Header anpassen */
  align-self: flex-start;     /* verhindert Strecken -> Sticky wirkt */
  height: -moz-fit-content;
  height: fit-content;
}

/* overflow bei Wrappern zurücksetzen (Sicherheitsnetz für sticky) */
#eg-page,
#eg-page .row,
#eg-page [class*="col-"] {
  overflow: visible !important;
}


/* ---------- MOBIL: Sticky deaktivieren ---------- */
@media (max-width: 991px) {
  #eg-page .ce_bs_gridStart.row > div:first-child,
  #eg-page .eg-contact {
    position: static;
    margin-bottom: 1.25rem;
  }
}
