/* Selbst-gehostet – keine Verbindung zu externen Servern (DSGVO) */

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/assets/fonts/inter-var.woff2') format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/assets/fonts/manrope-var.woff2') format('woff2');
}

/* Globale Schriftzuweisung – Fließtext Inter, Überschriften Manrope.
   fonts.css wird vor den seiteneigenen <style>-Blöcken geladen; deren
   font-family-Angaben wurden auf Inter umgestellt, Überschriften erben
   Inter und werden hier direkt auf Manrope gesetzt. */
body, input, textarea, select, button {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'Manrope', system-ui, sans-serif !important;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* ===== Barrierefreiheit: Skip-Link ===== */
.gw-skip { position: absolute; left: 8px; top: -60px; z-index: 2000; background: var(--gw-ci, #790F0B); color: #fff; padding: 10px 18px; font-weight: 700; text-decoration: none; border-radius: 0; transition: top 0.2s ease; }
.gw-skip:focus { top: 8px; outline: 2px solid #fff; outline-offset: 2px; }

/* ===== Design v2: sanfte Scroll-Einblendungen ===== */
.gw-reveal { opacity: 0; transform: translateY(22px); transition: opacity 0.75s cubic-bezier(.2,.6,.2,1), transform 0.75s cubic-bezier(.2,.6,.2,1); will-change: opacity, transform; }
.gw-reveal.is-in { opacity: 1 !important; transform: none !important; }
@media (prefers-reduced-motion: reduce) {
  .gw-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ===== Design v2: Haarlinien statt harter Rahmen + weiche Schatten ===== */
.gw-info-card, .bw-vcard, .bw-factor, .gw-kp-card, .gw-art-toc, .fwhp-usp, .fwhp-review,
[class*="-card"]:not([class*="card-select"]):not([class*="wizard"]):not([class*="nav"]):not([class*="footer"]),
[class*="check-item__box"], [class*="person-card"] {
  box-shadow: 0 1px 2px rgba(35,20,18,0.035), 0 16px 38px rgba(35,20,18,0.055);
  transition: box-shadow 0.35s ease, transform 0.35s ease, border-color 0.35s ease;
}
.gw-info-card:hover, .bw-vcard:hover, .bw-factor:hover, .gw-kp-card:hover, .fwhp-review:hover,
[class*="check-card"]:hover, [class*="check-item__box"]:hover, [class*="person-card"]:hover {
  box-shadow: 0 6px 14px rgba(35,20,18,0.06), 0 26px 60px rgba(35,20,18,0.10);
  transform: translateY(-4px);
}
