/* Fonts (Open Source) */
@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@500;700&family=Inter:wght@400;600;700&display=swap');

/* CI-Farben */
:root{
  --green:#2E7D32;       /* Waldgrün */
  --blue:#1565C0;        /* Tiefblau */
  --light-green:#81C784; /* nur Flächen/Akzente, kein Fließtext */
  --light-grey:#ECEFF1;  /* dezente Flächen/Linien */
  --orange:#FFB300;      /* Akzent/CTA (mit dunklem Text) */
  --text:#0B1320;
  --muted:#4A5568;
}

/* Grundtypografie */
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);line-height:1.6}
h1,h2,h3,h4{font-family:Ubuntu,Inter,sans-serif;color:var(--blue);line-height:1.25;margin-top:0.6rem;margin-bottom:0.4rem}
a{color:var(--blue);text-decoration:none}
a:hover,a:focus{text-decoration:underline}

/* Buttons (Quark nutzt .button) */
.button{border-radius:999px;padding:.7rem 1.05rem;font-weight:700}
.button-primary{background:var(--blue);color:#fff;border:none}
.button-secondary{background:var(--orange);color:#000;border:none}
.button:hover,.button:focus{filter:brightness(0.95);outline:none}

/* Header/Navi (bessere Kontraste) */
.header .navigation a{color:var(--text)}
.header .navigation a:hover{background:var(--light-grey);border-radius:10px}

/* Sections/Boxen */
.modular .features .feature{border:1px solid var(--light-grey);border-radius:14px}
.callout{background:linear-gradient(90deg, rgba(46,125,50,.08), rgba(21,101,192,.08));border:1px solid var(--light-grey);border-radius:16px}

/* Formulare */
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form select,
form textarea{
  width:100%;padding:.85rem;border:1px solid #cfd8dc;border-radius:12px;font:inherit
}
form input:focus,form textarea:focus,form select:focus{
  outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(21,101,192,.25)
}
form .button{margin-top:.3rem}

/* Listen/Badges */
.badge, .label{display:inline-block;border:1px solid var(--light-grey);border-radius:999px;padding:.35rem .7rem;font-weight:600}

/* Footer */
.footer{background:#0d1b2a;color:#e6edf3}
.footer a{color:#e6edf3}

/* Kontrast & Barrierefreiheit */
strong, b{color:var(--text)}
blockquote{border-left:4px solid var(--green);padding-left:.8rem}
hr{border:none;border-top:1px solid var(--light-grey)}

/* Kleinere Optimierungen mobil */
@media (max-width: 640px){
  .button{width:100%;text-align:center}
}
