@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@200..900&family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');

        html{
            background-image: linear-gradient(white 75%, #4db58b);
        }

        body {
            font-family: "Source Sans 3", sans-serif;
            font-optical-sizing: auto;
            font-weight: 300;
            font-style: normal;
        }
        .source-serif-4-bold {
            font-family: "Source Serif 4", serif;
            font-optical-sizing: auto;
            font-weight: 800;
            font-style: normal;
            letter-spacing: -0.02em;
        }

        h1 {
            font-size: clamp(1rem, 10vw, 12em);
            margin-top: 60px;
            line-height: 1;
        }

        @media (max-width: 800px) {
            h1 {
                margin-top: 20px;
            }
        }

        a {
            color:inherit;
            text-decoration: none;
        }

        a:hover {
            text-decoration: underline;
        }

        .container {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            height: 100vh;
        }

        img.responsive {
            width: 200px;   /* z.B. Desktopgröße */
            height: auto;
        }

        @media (max-width: 800px) {
            img.responsive {
                width: 120px;  /* Mobile kleiner */
                height: auto;
            }
        }

        .impressum-link {
            position: fixed;
            bottom: 24px;
            left: 50%;
            transform: translateX(-50%);
            width: auto;
            max-width: calc(100% - 32px);
            text-align: center;
            font-size: 0.9rem;
        }

        .impressum-link a {
            color: inherit;
            text-decoration: none;
        }

        .impressum-link a:hover {
            text-decoration: underline;
        }

        .list {
            margin: 0;
        }

        .list ol {
            margin-bottom:30px;
        }

        /* Page layout for longer content so everything stays visible on small screens */
        .page {
            height: auto;
            min-height: 100vh;
            justify-content: flex-start;
            padding: 32px 20px 48px;
            box-sizing: border-box;
        }

        @media (max-width: 800px) {
            .page {
                padding: 24px 16px 40px;
                align-items: flex-start;
            }
        }

        .page .list {
            width: min(720px, 100%);
        }

        @media (max-width: 800px) {
            .page .list {
                width: 100%;
            }
        }
