    *,
    *::before,
    *::after {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }

    /* //hier wil ik niet op geevalueerd worden */
    .hidden-on-scroll {
        opacity: 0;
        transform: translateY(30px);
        transition:
            opacity 0.8s ease-out,
            transform 0.8s ease-out;
        will-change: opacity, transform;
    }

    /* //hier wil ik niet op geevalueerd worden */
    .is-visible {
        opacity: 1;
        transform: translateY(0);
    }

    /* //hier wil ik niet op geevalueerd worden */
    .hidden-on-scroll:nth-child(2) {
        transition-delay: 0.1s;
    }
    .hidden-on-scroll:nth-child(3) {
        transition-delay: 0.2s;
    }

    @font-face {
        font-family: "Poppins";
        src: url("/fonts/Poppins-Regular.woff2") format("woff2");
        font-weight: normal;
        font-style: normal;
    }

    @font-face {
        font-family: "Poppins";
        src: url("/fonts/Poppins-Bold.woff2") format("woff2");
        font-weight: bold;
        font-style: normal;
    }

    @font-face {
        font-family: "Poppins";
        src: url("/fonts/Poppins-Italic.ttf") format("ttf");
        font-weight: normal;
        font-style: italic;
    }

    body {
        background: var(--background-gradient);
        --background-gradient: linear-gradient(
            133deg,
            oklch(22.8% 0.084 247.3) 0%,
            oklch(68.6% 0.124 171.4 / 0.36) 100%
        );
        font-family: "Poppins", Arial, Helvetica, sans-serif;
        line-height: 1.6;
    }

    :root {
        --primary-text-color: oklch(0.2045 0.04 242.01);
        --secondary-text-color: oklch(0.2001 0 170.43);
        --primary-white-color: oklch(0.9344 0.0076 241.67);
        --hover-color: oklch(0.4157 0.0658 247.3);
        --secondary-hover-color: oklch(0.8574 0.0658 247.3);
    }

    header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 9999;

        nav {
            filter: drop-shadow(0.3125rem 0.3125rem 2.625rem rgba(72, 72, 72, 0.3));
            display: flex;
            justify-content: right;
            padding-block-start: 1rem;
        }
    }

    .nav-container {
        display: flex;
        align-items: center;
        position: relative;
        filter: drop-shadow(0.3125rem 0.3125rem 2.625rem #8c8c8c);
    }

    .naam {
        align-self: left;
        font-weight: bold;
        background: var(--primary-white-color);
        clip-path: polygon(0.9375rem 0%, 100% 0, calc(100% - 0.9375rem) 100%, 0% 100%);

        > a {
            text-decoration: none;
            color: var(--primary-text-color);
            font-size: 0.9rem;
            display: block;
            padding-block: 0.875rem;
            padding-inline: 1.25rem;
        }
    }

    #menu-toggle {
        display: none;
    }

    /* //hier wil ik niet op geevalueerd worden */
    .hamburger {
        margin-inline-end: 1rem;
        display: flex;
        flex-direction: column;
        gap: 0.3125rem;
        cursor: pointer;
        padding-block: 0.75rem;
        padding-inline: 1.125rem;
        background: var(--primary-white-color);
        clip-path: polygon(0.9375rem 0%, 100% 0, calc(100% - 0.9375rem) 100%, 0% 100%);
        margin-inline-start: 0.3125rem;
        z-index: 10001;
    }

    /* //hier wil ik niet op geevalueerd worden */
    .hamburger span {
        width: 1.375rem;
        height: 0.1875rem;
        background: var(--primary-text-color);
        transition: 0.3s ease;
    }

    .nav-links {
        list-style-type: none;
        margin: 0;
        padding-block: 1.25rem;
        display: flex;
        flex-direction: column;
        background: var(--primary-white-color);
        position: fixed;
        top: calc(100% + 0.625rem);
        width: 13rem;
        right: 0;
        transform: translateX(200%);
        opacity: 1;
        pointer-events: none;
        transition: all 0.4s;
        clip-path: polygon(3.125rem 0%, 100% 0, calc(100% - 0px) 100%, 0% 100%);
        box-shadow: -0.3125rem 0.3125rem 0.9375rem rgba(0, 0, 0, 0.1);

        li {
            width: 100%;
            transition: all 0.2s;

            > a {
                display: block;
                padding-block: 0.9375rem;
                padding-inline: 1.5625rem;
                color: var(--primary-text-color);
                text-decoration: none;
                font-size: 0.9rem;
                text-align: right;
                margin-inline: 1rem;
            }
        }
    }

    .nav-links li:hover {
        background-color: var(--secondary-hover-color);
    }

    /* //hier wil ik niet op geevalueerd worden */
    #menu-toggle:checked ~ .nav-links {
        transform: translateX(0);
        opacity: 1;
        pointer-events: auto;
    }

    /* //hier wil ik niet op geevalueerd worden */
    #menu-toggle:checked ~ .hamburger span:nth-child(1) {
        transform: translateY(250%) rotate(45deg);
    }

    /* //hier wil ik niet op geevalueerd worden */
    #menu-toggle:checked ~ .hamburger span:nth-child(2) {
        transform: rotate(-45deg);
    }

    /* //hier wil ik niet op geevalueerd worden */
    #menu-toggle:checked ~ .hamburger span:nth-child(3) {
        transform: translateY(-250%) rotate(45deg);
        opacity: 0;
    }

    .active {
        background-color: var(--hover-color);

        > a {
            color: oklch(0.9344 0.0076 241.67) !important;

            &:hover {
                color: var(--primary-text-color) !important;
            }
        }
    }

    .hero-banner {
        filter: drop-shadow(0.3125rem 0.3125rem 2.625rem #8c8c8c);
        width: 90%;
        margin-block-start: 5rem;
        margin-inline: auto;
        color: white;
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        justify-content: space-between;
        gap: 2rem;
        padding: 1rem;
    }

    .small-hero-banner {
        filter: drop-shadow(0.3125rem 0.3125rem 2.625rem #8c8c8c);
        width: 90%;
        margin-block-start: 5rem;
        margin-inline: auto;
        color: white;
        text-align: center;
        align-items: center;
        justify-content: space-between;
        padding-block: 1rem;

        > p {
            color: oklch(0.8337 0 288);
        }
    }

    .hero-content {
        align-self: center;
        margin-block-end: 1.5rem;
        text-align: center;

        > p {
            margin-block-end: 3rem;
        }
    }

    .btn {
        transition: all 0.2s ease;
        text-decoration: none;
        background-color: var(--primary-white-color);
        padding-block: 0.5rem;
        padding-inline: 1.5rem;
        clip-path: polygon(1.25rem 0%, 100% 0, calc(100% - 1.25rem) 100%, 0% 100%);
        color: var(--primary-text-color);

        &:hover {
            background-color: var(--secondary-hover-color);
        }
    }

    .secondary-btn {
        transition: all 0.2s ease;
        text-decoration: none;
        background-color: var(--primary-text-color);
        padding-block: 1rem;
        padding-inline: 2.5rem;
        clip-path: polygon(1.25rem 0%, 100% 0, calc(100% - 1.25rem) 100%, 0% 100%);
        color: var(--primary-white-color);
        position: absolute;
        top: 6rem;
        left: 50%;
        transform: translateX(-50%);
        width: max-content;
        z-index: 20;

        &:hover {
            background-color: var(--secondary-hover-color);
            color: var(--primary-text-color);
        }
    }

    p {
        color: oklch(0.8259 0 290.96);
        margin-block-end: 1rem;
    }

    .bottom-item {
        padding-block-end: 6rem;
    }

    .opdrachten {
        position: relative;
        padding-block-start: 10vh;
        padding-inline: 1rem;
        padding-block-end: 0;
        z-index: 10;
        padding-block-start: 6rem;
        background-color: var(--primary-white-color);
        min-height: 80vh;
        clip-path: polygon(0 2%, 100% 0, 100% 95%, 0 100%);
        filter: drop-shadow(0.3125rem -0.3125rem 1.4375rem #4d4d4d);

        > h2 {
            font-weight: bold;
            font-size: 1.7rem;
            margin-block-end: 3rem;
            text-align: center;
        }
    }

    .opdracht-content {
        margin-inline: 0.5rem;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        padding-block-start: 5rem;

        > div {
            h2 {
                background: var(--background-gradient);
                background-clip: text;
                -webkit-background-clip: text;
                color: transparent;
                overflow: visible;
                padding-block-end: 0.1em;
                padding-block-start: 1rem;
            }

            h3 {
                font-weight: bolder;
                font-size: 1rem;
            }

            p {
            }
        }
    }

    .opdracht-content > div p {
        color: oklch(0.2394 0.046 218.82);
    }

    .opdracht-deel-about {
        padding-block-start: 1rem;
        padding-inline-end: 1rem;
        padding-inline-start: 1rem;
        padding-block-end: 1rem;
        text-align: center;
        background-color: var(--primary-white-color);
        clip-path: polygon(1.25rem 0%, 100% 0, calc(100% - 1.25rem) 100%, 0% 100%);
    }

    .cards {
        display: flex;
        flex-direction: column;
        filter: drop-shadow(0.3125rem 0.3125rem 2.625rem rgba(152, 152, 152, 0.92));
        gap: 2rem;
        margin: 0;
        align-items: center;
        margin-inline: auto;
        list-style: none;
        padding-inline: 1rem;
        overflow: visible;
        padding-block-end: 8rem;

        li {
            clip-path: polygon(3.125rem 0%, 100% 0, calc(100% - 3.125rem) 100%, 0% 100%);
            display: flex;
            flex-direction: column-reverse;
            width: 20rem;
            min-width: 20rem;
            background-color: var(--hover-color);
            overflow: hidden;
            padding: 0 2.2rem 0 1rem;
            box-shadow:
                0 0 0.2rem oklch(0 0 0 / 0.2),
                0 0 2rem oklch(0 0 0 / 0.1);
            transition: background-color 0.2s ease-in-out;
            position: relative;

            img {
                display: block;
                width: 120%;
                height: 8rem;
                object-fit: cover;
                object-position: center;
            }

            .content {
                padding-inline: 1rem;
                &:hover {
                    margin-block-end: 1.5rem;
                }

                h3 {
                    margin-block-start: 1rem;
                    color: var(--primary-white-color);
                    text-align: center;
                    transition: color 0.2s ease-in-out;
                }

                p {
                    transition: color 0.2s ease-in-out;
                }
            }

            .card-button {
                justify-content: center;
                text-align: center;
                background-color: var(--primary-white-color);
                margin-inline-end: 1rem;
                padding: 0.5rem;
                clip-path: polygon(0.375rem 0%, 100% 0, calc(100% - 0.375rem) 100%, 0% 100%);
                transition:
                    background-color 0.2s ease-in-out,
                    transform 0.2s ease-in-out;

                > a {
                    text-decoration: none;
                    color: var(--primary-text-color);
                    transition: color 0.2s ease-in-out;
                }
            }

            .image-filter {
                pointer-events: none;
                transition: mix-blend-mode 0.2s ease-in-out;
            }

            &:hover,
            &:active {
                background-color: var(--secondary-hover-color);

                .content h3,
                .content p {
                    color: var(--primary-text-color);
                }

                .image-filter {
                    mix-blend-mode: normal;
                }

                .content .card-button {
                    background-color: var(--hover-color);

                    > a {
                        color: var(--primary-white-color);
                    }
                }
            }
        }
    }

    .cards-listed {
        display: flex;
        flex-direction: column-reverse;
        filter: drop-shadow(0.3125rem 0.3125rem 2.625rem rgba(152, 152, 152, 0.92));
        gap: 2rem;
        margin: 0;
        align-items: center;
        margin-inline: auto;
        list-style: none;
        padding-inline: 1rem;
        overflow: visible;
        padding-block-end: 2rem;
        li {
            clip-path: polygon(3.125rem 0%, 100% 0, calc(100% - 3.125rem) 100%, 0% 100%);
            display: flex;
            flex-direction: column-reverse;
            width: 20rem;
            min-width: 20rem;
            background-color: var(--hover-color);
            overflow: hidden;
            padding: 0 2.2rem 0 1rem;
            box-shadow:
                0 0 0.2rem oklch(0 0 0 / 0.2),
                0 0 2rem oklch(0 0 0 / 0.1);
            transition: background-color 0.2s ease-in-out;
            position: relative;

            img {
                display: block;
                width: 120%;
                height: 10rem;
                object-fit: cover;
                object-position: center;
            }

            .content {
                padding-inline: 1rem;
                &:hover {
                    margin-block-end: 1.5rem;
                }

                h3 {
                    margin-block-start: 1rem;
                    color: var(--primary-white-color);
                    text-align: center;
                    transition: color 0.2s ease-in-out;
                }

                p {
                    transition: color 0.2s ease-in-out;
                }
            }

            .card-button {
                justify-content: center;
                text-align: center;
                background-color: var(--primary-white-color);
                margin-inline-end: 1rem;
                padding: 0.5rem;
                clip-path: polygon(0.375rem 0%, 100% 0, calc(100% - 0.375rem) 100%, 0% 100%);
                transition:
                    background-color 0.2s ease-in-out,
                    transform 0.2s ease-in-out;

                > a {
                    text-decoration: none;
                    color: var(--primary-text-color);
                    transition: color 0.2s ease-in-out;
                }
            }

            .image-filter {
                pointer-events: none;
                transition: mix-blend-mode 0.2s ease-in-out;
            }

            &:hover {
                background-color: var(--secondary-hover-color);

                .content h3,
                .content p {
                    color: var(--primary-text-color);
                }

                .image-filter {
                    mix-blend-mode: normal;
                }

                .content .card-button {
                    background-color: var(--hover-color);

                    > a {
                        color: var(--primary-white-color);
                    }
                }
            }
        }
    }

    .opsomming {
        padding-block-end: 2rem;
    }

    .overlay-link {
        font-size: 0;
        opacity: 0;
        position: static;

        &:hover {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 1;
            cursor: pointer;
        }

        &::after {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 1;
            cursor: pointer;
        }
    }

    .info {
        text-align: center;
        margin-block-start: 1.5rem;
        margin-block-end: 2rem;

        > h2 {
            color: var(--primary-white-color);
            text-shadow: 0.125rem 0.125rem 0.625rem var(--primary-text-color);
        }

        > ul {
            display: flex;
            justify-content: center;
            gap: 3rem;
            list-style: none;
            margin-inline-end: 3rem;

            > li {
                filter: drop-shadow(0.3125rem 0.3125rem 2.625rem #383838);
                margin-block: 0.8rem;
            }
        }
    }

    .info > ul > li a {
        color: var(--primary-white-color);

        &:hover {
            color: var(--hover-color);
        }
    }

    footer {
        background-color: var(--primary-white-color);
        padding: 0.5rem;
        text-align: center;

        > p {
            color: var(--primary-text-color);
        }
    }

    @media (min-width: 50em) {
        header .nav-container {
            background: var(--primary-white-color);
            clip-path: polygon(1.5625rem 0%, 100% 0, calc(100% - 1.5625rem) 100%, 0% 100%);
            padding: 0.3rem;
        }

        header .naam {
            clip-path: none;
            background: transparent;
            margin-inline-start: 1rem;
        }

        header nav {
            justify-content: center;
        }

        header .hamburger {
            display: none;
        }

        header .nav-links {
            position: static;
            flex-direction: row;
            width: auto;
            padding: 0;
            opacity: 1;
            pointer-events: auto;
            transform: none;
            clip-path: none;
            background: transparent;
            box-shadow: none;
        }

        header .nav-links > li {
            clip-path: polygon(1.25rem 0%, 100% 0, calc(100% - 1.25rem) 100%, 0% 100%);
            width: auto;
        }

        header .nav-links > li:last-child {
            margin-inline-end: 1rem;
        }

        .secondary-btn {
            position: static;
            transform: none;
            width: auto;
            padding-block: 0.6rem;
            padding-inline: 1.5rem;
            margin-block-start: 4rem;
        }

        .hero-banner {
            flex-direction: row;
            width: 60%;
            text-align: left;
        }

        .small-hero-banner {
            width: 60%;
            text-align: center;
            padding-block: 1rem;
            padding-inline-start: 1rem;
            padding-inline-end: 0;
        }

        .hero-content {
            align-self: flex-end;
            text-align: left;
        }

        .opdrachten {
            padding-inline-start: 1rem;
            clip-path: polygon(0 10%, 100% 0, 100% 95%, 0 100%);
        }

        .opdrachten > h2 {
            margin-inline-start: 8rem;
            text-align: left;
        }

        .opdracht-content {
            flex-direction: row;
            padding-block-start: 0;
        }

        .opdracht-deel-about {
            padding-block-start: 1rem;
            padding-inline-end: 1rem;
            padding-inline-start: 1rem;
            text-align: center;
            background-color: var(--primary-white-color);
            clip-path: polygon(1.25rem 0%, 100% 0, calc(100% - 1.25rem) 100%, 0% 100%);
        }

        .cards {
            flex-direction: row;
            flex-wrap: nowrap;
            overflow-x: auto;
            overflow-y: hidden;
            scroll-snap-type: x mandatory;
            padding-inline-start: 4rem;
            justify-content: flex-start;
            padding-block-end: 2rem;

            li {
                flex: 0 0 15rem;
                width: 15rem;
                min-width: 19rem;
                scroll-snap-align: center;
            }
        }

        .cards-listed {
            flex-direction: row-reverse;
            flex-wrap: nowrap;
            overflow-x: auto;
            overflow-y: hidden;
            scroll-snap-type: x mandatory;
            padding-inline-start: 0rem;
            justify-content: flex-start;

            li {
                flex: 0 0 15rem;
                width: 15rem;
                min-width: 19rem;
                scroll-snap-align: center;
            }
        }

        .cards::-webkit-scrollbar,
        .cards-listed::-webkit-scrollbar {
            height: 1.125rem;
        }

        .cards::-webkit-scrollbar-track,
        .cards-listed::-webkit-scrollbar-track {
            background: transparent;
            margin: 0 1.25rem;
        }

        .cards::-webkit-scrollbar-thumb,
        .cards-listed::-webkit-scrollbar-thumb {
            background-color: transparent;
            background-image: linear-gradient(
                115deg,
                transparent 0.9375rem,
                var(--hover-color) 0.9375rem,
                var(--hover-color) calc(100% - 0.9375rem),
                transparent calc(100% - 0.9375rem)
            );
            border: 0.25rem solid transparent;
            background-clip: padding-box;
            filter: drop-shadow(0.3125rem 0.3125rem 2.625rem #000000);
        }

        .cards::-webkit-scrollbar-thumb:hover,
        .cards-listed::-webkit-scrollbar-thumb:hover {
            background-image: linear-gradient(
                115deg,
                transparent 0.9375rem,
                var(--secondary-hover-color) 0.9375rem,
                var(--secondary-hover-color) calc(100% - 0.9375rem),
                transparent calc(100% - 0.9375rem)
            );
        }

        .image-filter {
            mix-blend-mode: multiply;
        }
    }