/* Inter – lokal eingebunden (DSGVO-konform, kein Google-Server-Aufruf) */
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('/assets/fonts/inter-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('/assets/fonts/inter-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
body { font-family: 'Inter', sans-serif; }
.c-logo {
    width: 200px;
    margin-top: 60px;
}
.fade-bottom {
  display: block;

  /* unten ausblenden: bis ~70% voll sichtbar, dann Verlauf zu transparent */
  -webkit-mask-image: linear-gradient(to bottom, #000 70%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 70%, transparent 100%);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
.fade-top {
  display: block;

  /* oben ausblenden: Verlauf von transparent auf voll sichtbar ab ~15% */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 15%);
  mask-image: linear-gradient(to bottom, transparent 0%, #000 15%);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
/* Oder global für alle Anker */
section[id] {
    scroll-margin-top: 80px;
}
html {
  scroll-behavior: smooth;
}

@media (max-width: 1025px) {
  /* Alles, was hier drin steht, gilt nur bis zu einer Breite von 1025px */
  #hero {
    display: none;
  }
}
/* Dark Mode */
body.dark-mode { background-color: #111827 !important; }
body.dark-mode main { background-color: #111827; }
body.dark-mode section { background-color: #111827; }
body.dark-mode h1, body.dark-mode h2, body.dark-mode p, body.dark-mode span, body.dark-mode li { color: #f3f4f6; }
body.dark-mode .bg-white { background-color: #1f2937 !important; }
body.dark-mode .bg-gray-50 { background-color: #111827 !important; }
body.dark-mode .bg-gray-100 { background-color: #1f2937 !important; }
body.dark-mode .bg-slate-50 { background-color: #111827 !important; }
body.dark-mode .text-gray-900 { color: #f9fafb !important; }
body.dark-mode .text-gray-800 { color: #f3f4f6 !important; }
body.dark-mode .text-gray-700 { color: #e5e7eb !important; }
body.dark-mode .text-gray-600 { color: #d1d5db !important; }
body.dark-mode .text-gray-500 { color: #9ca3af !important; }
body.dark-mode .text-slate-900 { color: #f9fafb !important; }
body.dark-mode .text-slate-800 { color: #f3f4f6 !important; }
body.dark-mode .text-slate-700 { color: #e5e7eb !important; }
body.dark-mode .text-slate-600 { color: #d1d5db !important; }
body.dark-mode .text-slate-500 { color: #9ca3af !important; }
body.dark-mode .border-gray-200 { border-color: #374151 !important; }
body.dark-mode .border-gray-100 { border-color: #1f2937 !important; }
body.dark-mode .border-slate-200 { border-color: #374151 !important; }
body.dark-mode .border-slate-100 { border-color: #1f2937 !important; }
body.dark-mode .shadow-sm { box-shadow: 0 1px 3px rgba(0,0,0,0.2) !important; }
body.dark-mode .shadow-xl, body.dark-mode .shadow-lg { box-shadow: 0 4px 24px rgba(0,0,0,0.5) !important; }
body.dark-mode #contact .bg-white\/95 * { color: #111827 !important; }
body.dark-mode #contact a[href^="tel"] { color: #d4c607 !important; }
body.dark-mode .rounded-full.border-slate-100 { border-color: #ffffff !important; }
