
    /* Schriften: DM Serif Display (Überschriften), Source Sans 3 (Fließtext), Inter (Fallback) */

    @font-face {
        font-family: 'DM Serif Display';
        font-style: normal;
        font-weight: 400;
        font-display: swap;
        src: url('/fonts/DMSerifDisplay-Regular.woff2') format('woff2');
    }
    @font-face {
        font-family: 'Source Sans 3';
        font-style: normal;
        font-weight: 400;
        font-display: swap;
        src: url('/fonts/SourceSans3-Regular.woff2') format('woff2');
    }
    @font-face {
        font-family: 'Source Sans 3';
        font-style: normal;
        font-weight: 600;
        font-display: swap;
        src: url('/fonts/SourceSans3-SemiBold.woff2') format('woff2');
    }
    @font-face {
        font-family: 'Source Sans 3';
        font-style: normal;
        font-weight: 700;
        font-display: swap;
        src: url('/fonts/SourceSans3-Bold.woff2') format('woff2');
    }
    @font-face {
        font-family: 'Inter';
        font-style: normal;
        font-weight: 100 900;
        font-display: swap;
        src: url('/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.woff2') format('woff2');
    }

    html {
        overflow-y: scroll;
        scrollbar-gutter: stable;
    }
    body {
        font-family: 'Source Sans 3', 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
        background-color: #f0f4f8;
        /* font-synthesis: none; — entfernt, verursachte dünnere Schrift als auf anderen Seiten */
        opacity: 0;
        transition: opacity 0.15s ease-out;
    }
    body.loaded {
        opacity: 1;
    }
    /* Überschriften: DM Serif Display (nicht Markenname) */
    h1, h2, h3 {
        font-family: 'DM Serif Display', Georgia, 'Times New Roman', serif;
    }

    /* Kritische above-the-fold Styles */
    *,::after,::before{box-sizing:border-box}
    .flex{display:flex}.flex-col{flex-direction:column}.min-h-screen{min-height:100vh}
    .w-full{width:100%}.bg-white{background-color:#fff}.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/.1)}
    .max-w-7xl{max-width:80rem}.mx-auto{margin-left:auto;margin-right:auto}.px-4{padding-left:1rem;padding-right:1rem}
    .items-center{align-items:center}.justify-between{justify-content:space-between}.h-16{height:4rem}
    .flex-shrink-0{flex-shrink:0}.gap-3{gap:.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}
    .font-bold{font-weight:700}.text-gray-800{color:#1f2937}.hidden{display:none}.invisible{visibility:hidden}.opacity-0{opacity:0}
    .flex-grow{flex-grow:1}.flex-1{flex:1 1 0%}.ml-8{margin-left:2rem}.gap-1{gap:.25rem}
    .w-10{width:2.5rem}.h-10{height:2.5rem}.text-blue-600{color:#2563eb}
    .tracking-wider{letter-spacing:.05em}.rounded-md{border-radius:.375rem}
    .px-3{padding-left:.75rem;padding-right:.75rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}
    .relative{position:relative}.space-x-4>:not([hidden])~:not([hidden]){margin-left:1rem}
    .text-gray-600{color:#4b5563}.text-sm{font-size:.875rem;line-height:1.25rem}
    .bg-blue-600{background-color:#2563eb}.text-white{color:#fff}
    .rounded-lg{border-radius:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}
    .gap-4{gap:1rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}
    .text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}
    .font-semibold{font-weight:600}.border-b{border-bottom-width:1px}.border-gray-200{border-color:#e5e7eb}
    .pb-2{padding-bottom:.5rem}.overflow-hidden{overflow:hidden}
    img,svg{display:block;vertical-align:middle}img{max-width:100%;height:auto}
    a{color:inherit;text-decoration:inherit}
    @media(min-width:1024px){.lg\:flex{display:flex}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:block{display:block}}
    @media(min-width:640px){.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}
    
    /* Bundesland-Chips unter der Schnellsuche (8.9.2026) */
    .tw-at-chip { background:#fff; border:1px solid #c7d4e3; color:#1f2937; border-radius:999px; padding:5px 12px; font-size:12.5px; font-weight:600; cursor:pointer; line-height:1.2; }
    .tw-at-hinttext { font-size:13.5px; line-height:1.45; font-weight:600; color:#1e3a8a; text-align:center; }
    .tw-at-chiprow { margin-top:8px; display:flex; flex-wrap:wrap; gap:6px; align-items:center; justify-content:center; }
    @media (min-width:640px){ .tw-at-hinttext { text-align:left; } .tw-at-chiprow { justify-content:flex-start; } }
    .tw-at-chip:hover { background:#2563eb; border-color:#2563eb; color:#fff; }
