/* Manuela Weinand – Basistheme (BlankSlate + WPBakery)
   Version 0.1 – 2026-10-30
   Ziel: Design-Tokens + Grundtypografie + globale Elemente.
   Sondermodule und Header-/Footer-Struktur folgen separat.
*/
:root {
  --mw-primary: #50bcbd;
  --mw-primary-dark: #395c65;
  --mw-mint: #b0cec1;
  --mw-warm-grey: #878075;
  --mw-text: #191919;
  --mw-white: #fff;
  --mw-font: 'Quicksand', sans-serif;
  --mw-container: 1400px;
  --mw-gutter: clamp(20px, 4vw, 60px);
  --mw-section-space: clamp(64px, 7vw, 120px);
  --mw-radius-pill: 999px;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--mw-white);
  color: var(--mw-text);
  font-family: var(--mw-font);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img, svg, video { max-width: 100%; height: auto; }
img { display: block; }
a { color: var(--mw-primary-dark); text-decoration: none; text-underline-offset: .16em; }
a:hover, a:focus-visible { color: var(--mw-primary); }
button, input, textarea, select { font: inherit; }
:focus-visible { outline: 2px solid var(--mw-primary-dark); outline-offset: 3px; }
::selection { background: var(--mw-mint); color: var(--mw-text); }

/* Typografie */
h1, h2, h3, h4, h5, h6 {
  color: var(--mw-primary);
  font-family: var(--mw-font);
  line-height: 1.22;
  margin: 0 0 .7em;
  text-wrap: balance;
}
h1 { font-size: clamp(34px, 3.1vw, 44px); font-weight: 700; }
h2 { font-size: clamp(29px, 2.6vw, 36px); font-weight: 700; }
h3 { font-size: clamp(24px, 2vw, 28px); font-weight: 600; }
h4 { font-size: 22px; font-weight: 600; }
h5 { font-size: 19px; font-weight: 600; }
h6 { font-size: 16px; font-weight: 700; }
p { margin: 0 0 1.25em; }
strong, b { font-weight: 700; }
small { font-size: .8em; }

/* Content-Hilfsklassen – auch als zusätzliche WPBakery-Klassen nutzbar */

#container{
  margin-top:2em;
  width:96%;
  max-width:var(--mw-container);
  margin-left:auto;
  margin-right:auto;
}

.mw-container {
  width: min(calc(100% - 2 * var(--mw-gutter)), var(--mw-container));
  margin-inline: auto;
}
.mw-section { padding-block: var(--mw-section-space); }
.mw-eyebrow {
  color: var(--mw-primary);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  display: inline-block;
  margin-bottom: 18px;
}
.mw-eyebrow::after {
  content: '';
  display: block;
  width: 32px;
  height: 1px;
  background: currentColor;
  margin-top: 5px;
}

/* Buttons – bewusst über eigene Klasse, WPBakery-Buttons bleiben unberührt */
.mw-button,
a.mw-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 27px;
  border: 0;
  border-radius: var(--mw-radius-pill);
  background: var(--mw-primary);
  color: var(--mw-white);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  cursor: pointer;
  transition: background-color .2s ease, transform .2s ease;
}
.mw-button:hover,
.mw-button:focus-visible { background: var(--mw-primary-dark); color: #fff; }
.mw-button--dark { background: var(--mw-primary-dark); }
.mw-button--dark:hover, .mw-button--dark:focus-visible { background: var(--mw-primary); }

/* Editor / WPBakery: nur Layout-Helpers, keine pauschalen .vc_row-Overrides */
.mw-text-narrow { max-width: 760px; }
.mw-text-center { text-align: center; }
.mw-text-center .mw-text-narrow { margin-inline: auto; }

@media (max-width: 767px) {
  body { font-size: 16px; line-height: 1.6; }
  h4 { font-size: 20px; }
  .mw-button, a.mw-button { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .mw-button { transition: none; }
}
