@font-face {
    font-family: "Fredoka";
    src: url("./fonts/Fredoka-VariableFont_wdth,wght.woff2") format("woff2")
}
*,
*::before,
*::after{
    box-sizing: border-box;
}
:root{
    font-family: Fredoka, serif;
    line-height: 1.6;
    scroll-behavior: smooth;
    --bg: oklch(0.99 0.003 325);
    --primary: oklch(0.25 0.01 325);
}
body{
    margin: 0;
    background-color: var(--bg);
    color: var(--primary);
}
.container{
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
}
header{
    background-color: var(--primary);
}
nav ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0 0 0 -2rem;
}

nav a {
    color: var(--bg);
    text-decoration: none;
    padding-block: 1rem;
    padding-inline: 2rem;
    display: block;
}
.row{
    display: flex;
    gap: 2rem;
}
.visually-hidden{
    color: oklch(0 0 0 / 0.0);
}

.exercise-nav{
    --text: oklch(0.99 0.003 325);
    --bg: oklch(0.45 0.32 40);
}
.exercise-nav ul{
    list-style: none;
    display: flex;
    gap: 0;
    padding: 0;
    margin: 0;
}
.exercise-nav a {
    color: var(--text);
    background-color: var(--bg);
    padding:0.4rem 0.7rem;
    transition: color .2s ease-in-out, background-color .2s ease-in-out;
}
.exercise-nav a:hover,
.exercise-nav a:focus-visible {
    color: var(--bg);
    background-color: var(--text);
}
.exercise-nav li:first-child{
    margin-inline-end: auto;

}
.exercise-nav li:first-child a{
    font-weight:600;
}
@media (min-width: 600px) {

    .cards {
        list-style: none;
        padding: 0;
        margin: 0;

        display: flex;
        flex-wrap: wrap;
        gap: 1.5rem;
    }

    .cards li {
        position: relative;

        flex: 1 1 calc(33% - 1.5rem);
        max-width: 350px;

        border-radius: 1rem;
        overflow: hidden;
        background: white;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);

        display: flex;
        flex-direction: column;
    }

    .cards img {
        width: 100%;
        height: auto;
        display: block;
    }

    .cards .content {
        padding: 1rem 1.2rem;
        position: relative;
        z-index: 1;
    }

    .cards h3 {
        margin: 0 0 0.4rem;
        font-size: 1.2rem;
    }

    .cards p {
        margin: 0 0 1rem;
    }

    .cards a {
        color: #3849ff;
        text-decoration: none;
        font-size: 0.9rem;
    }

    .cards a:hover,
    .cards a:focus-visible {
        text-decoration: underline;
    }

    .cards .overlay-link {
        position: absolute;
        inset: 0;
        z-index: 2;
        text-indent: -9999px;
        overflow: hidden;
    }
}
@media (max-width: 600px) {

    .cards {
        list-style: none;
        padding: 0;
        margin: 0;
        justify-content: center;
        display: flex;
        flex-wrap: wrap;
        gap: 1.5rem;
    }

    .cards li {
        position: relative;

        flex: 1 1 calc(100%);
        max-width: 350px;

        border-radius: 1rem;
        overflow: hidden;
        background: white;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);

    }

    .cards img {
        width: 100%;
        height: auto;
        display: block;
    }

    .cards .content {
        padding: 1rem 1.2rem;
        position: relative;
        z-index: 1;
    }

    .cards h3 {
        margin: 0 0 0.4rem;
        font-size: 1.2rem;
    }

    .cards p {
        margin: 0 0 1rem;
    }

    .cards a {
        color: #3849ff;
        text-decoration: none;
        font-size: 0.9rem;
    }

    .cards .overlay-link {
        position: absolute;
        inset: 0;
        z-index: 2;
        text-indent: -9999px;
        overflow: hidden;
    }
}
/* Algemene reset voor links */
#mylink a,
#oef4 a {
    text-decoration: none;
    font-weight: 600;
}

/* Link */
.mylink a {
    color: #c00000;              /* hoog contrast rood */
    position: relative;
    padding-left: 1.6em;
}

.mylink a::before {
    content: "✖";                /* gegeven icoon */
    position: absolute;
    left: 0;
    color: #c00000;
}

/* Button */
.mybutton a {
    display: inline-block;
    background-color: #6b8e23;   /* contrastrijk groen */
    color: #ffffff;
    padding: 0.6em 1.2em;
    border-radius: 6px;
    font-weight: 600;
}

.mybutton a::before {
    content: "✔";                /* gegeven icoon */
    margin-right: 0.5em;
}

/* Hover states (toegankelijk) */
.mylink a:hover {
    text-decoration: underline;
}

.mybutton a:hover {
    background-color: #556b1a;
}


