/* ═══════════════════════════════════════════════════
   TOKENS
   ═══════════════════════════════════════════════════ */
:root {
  --gruen:      #064520;
  --gruen-mid:  #0a6630;
  --mint:       #c1d1c7;
  --mint-light: #e8efe9;
  --rot:        #ac1f1c;
  --rot-h:      #c52825;
  --sand:       #fef9cb;
  --text:       #1a1a1a;
  --text-mid:   #444;
  --white:      #ffffff;
  --ff-ui:      'Nunito', 'Segoe UI', sans-serif;
  --ff-body:    'Source Serif 4', Georgia, serif;
  --r:          10px;
  --r-lg:       18px;
  --r-pill:     50px;
  --sh-sm:      0 2px 8px  rgba(6,69,32,.12);
  --sh-md:      0 6px 24px rgba(6,69,32,.16);
  --sh-lg:      0 12px 48px rgba(6,69,32,.2);
  --max-w:      1100px;
  --nav-h:      64px;
}

/* ═══════════════════════════════════════════════════
   RESET — kein horizontales Scrollen, iOS/Android
   ═══════════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html, body { overflow-x: hidden; width: 100%; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--nav-h);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: var(--ff-body);
  font-size: 18px;
  line-height: 1.75;
  color: var(--text);
  background: var(--mint-light);
  -webkit-overflow-scrolling: touch;
}

img, picture, svg { display: block; max-width: 100%; height: auto; border: 0; }
a .icon, a svg { color: inherit; }
ul { list-style: none; }

/* Tap-Highlight entfernen (iOS + Android) */
a, button {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
}

/* Touch-Targets mind. 44px (Apple HIG) */
button, .btn { touch-action: manipulation; }

/* ═══════════════════════════════════════════════════
   SKIP LINK
   ═══════════════════════════════════════════════════ */
.skip-link {
  position: absolute;
  top: -100px; left: 1rem;
  background: var(--gruen); color: #fff;
  padding: .5em 1.2em;
  border-radius: 0 0 var(--r) var(--r);
  font-family: var(--ff-ui); font-weight: 700;
  text-decoration: none;
  transition: top .2s;
  z-index: 9999;
}
.skip-link:focus { top: 0; }

