/* evolution consulting – Basis und Kompatibilitätsschicht
   Ersetzt die Bootstrap-Klassen, die die Joomla-Module verwenden.
   Reihenfolge: base.css → custom.css (Design) → shell.css (Rahmen) */

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
body {
  margin: 0;
  font-family: var(--sans, "Outfit", Arial, Helvetica, sans-serif);
  color: var(--text, #333);
  background: var(--bg, #fff);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img, svg, iframe { max-width: 100%; }
img { height: auto; }
a { color: var(--green, #3B6D11); }

/* ---- Bootstrap-Ersatz (nur was die Module wirklich nutzen) ---- */
.row { display: flex; flex-wrap: wrap; margin: 0; }
.g-0 { gap: 0; }
.col-sm-6 { flex: 1 1 260px; }
.col-md-4 { flex: 1 1 220px; }
.text-center { text-align: center; }
.text-white, .text-white a { color: #fff; }

.btn {
  display: inline-block;
  padding: 14px 30px;
  border-radius: var(--r, 10px);
  font-weight: 600;
  text-decoration: none;
  border: 1px solid transparent;
  cursor: pointer;
  transition: transform .15s ease, background .2s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn:focus-visible { outline: 3px solid var(--gold, #C9A84C); outline-offset: 2px; }
.btn-primary, .btn-p {
  background: var(--green, #3B6D11);
  color: #fff;
}
.btn-primary:hover, .btn-p:hover { background: var(--green-d, #27500A); color: #fff; }
.btn-g {
  display: inline-block;
  padding: 14px 30px;
  border-radius: var(--r, 10px);
  font-weight: 600;
  text-decoration: none;
  background: var(--gold, #C9A84C);
  color: #1b1b1b;
}
.btn-g:hover { filter: brightness(1.06); }
.btn-sm { padding: 10px 22px; font-size: 15px; }

.card {
  background: #fff;
  border: 1px solid var(--bd, #ddd);
  border-radius: var(--r, 10px);
  overflow: hidden;
}
.card-body { padding: 22px 24px; }
.card-title { margin: 0 0 10px; font-family: var(--serif, Georgia, serif); }

/* Joomla-Reste neutralisieren */
.moduletable { margin: 0; }
