/* ===============================
   CONTAINER
================================= */

.container {
    max-width: 1600px;
    /* of 95% van scherm */
    margin: 0 auto;
    padding-left: 2rem;
    padding-right: 2rem;
}

/* ===============================
   CARDS ONDER ELKAAR
================================= */

.container>.card-rooster,
.container>.card-locaties,
.container>.card-vakanties {
    margin: 2rem 0;
    /* ruimte tussen cards */
    max-width: 1900px;
    width: 100%;
    text-align: left;
    background: rgba(248, 231, 192, 0.7);
    padding-bottom: 1rem;
}

/* Basis card styling */
.card,
.card-rooster,
.card-locaties,
.card-vakanties {
    backdrop-filter: blur(10px);
    padding: 1.5rem;
    border-radius: var(--radius);
    font-size: 1.1rem;

    /* Rustige standaard schaduw */
    box-shadow:
        0 10px 20px rgba(0, 0, 0, 0.4),
        0 4px 10px rgba(0, 0, 0, 0.3);

    transition: box-shadow 0.25s ease;
    width: 100%;
    max-width: 1800px;

    overflow-x: auto;
    border: none;
}

/* Hover → GEEN beweging, alleen diepte */
.card:hover,
.card-rooster:hover,
.card-locaties:hover,
.card-vakanties:hover {
    box-shadow:
        0 18px 35px rgba(0, 0, 0, 0.6),
        0 8px 20px rgba(0, 0, 0, 0.45);
}

/* ===============================
   FLEX / GRID STRUCTUUR
================================= */

.grid {
    display: flex;
    flex-direction: column;
    /* blijf onder elkaar */
    gap: 2rem;
    width: 100%;
    /* neem volledige breedte van parent */
    max-width: 1600px;
    /* kies gewenste max breedte */
    margin: 0 auto;
    /* center op scherm */
}


/* ===============================
   KOPPEN
================================= */

.card h3,
.card-rooster h3,
.card-locaties h3,
.card-vakanties h3 {
    margin-bottom: 1rem;
}

/* ===============================
   TABEL
================================= */

.rooster-table {
    width: 100%;
    border-collapse: collapse;
}

.rooster-table th,
.rooster-table td {
    border: 1px solid rgba(96, 73, 26, 0.6);
    padding: 0.5rem;
    text-align: left;
}

.rooster-table th {
    background: rgba(96, 73, 26, 0.6);
    color: var(--text);
}

.rooster-table td {
    background-color: rgba(226, 214, 190, 0.6);
}


/* ===============================
   VINKJES LIJST
================================= */

.vinkjes-lijst {
    list-style: none;
    padding-left: 0;
}

.vinkjes-lijst li::before {
    content: "✔";
    color: #3A2A1A;
    margin-right: 0.5rem;
}

.section-uniform {
    position: relative;
    padding: 5rem 2rem;

    /* Basis achtergrond + bruine tint voor de hele sectie */
    background-image:
        linear-gradient(rgba(122, 90, 48, 0.35),
            rgba(122, 90, 48, 0.35)),
        url("images/Logo Frank achtergrond meisje zwart.png");
    background-blend-mode: multiply;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;

    color: #3A2A1A;
    border-radius: 12px;

    box-shadow:
        0 25px 50px rgba(0, 0, 0, 0.85),
        0 12px 30px rgba(0, 0, 0, 0.65);

    /* NOOIT wippen */
    overflow: visible;
    transform: none;
    transition: none;
}

/* Overlay alleen over het meisje om deze lichter te maken */
.section-uniform::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(248, 231, 192, 0.35);
    border-radius: 12px;
    z-index: 0;
    pointer-events: none;
    mix-blend-mode: soft-light;
}

/* Content blijft boven overlay en achtergrond */
.section-uniform>* {
    position: relative;
    z-index: 1;
}
/* =================================
   RESPONSIVE – MOBIEL
================================= */
/* Desktop: tabel zichtbaar, lijst verborgen */
.rooster-mobiel {
    display: none;
}

/* =================================
   RESPONSIVE – MOBIEL
================================= */
@media (max-width: 768px) {

    .section-uniform {
        padding: 2rem 0.25rem;
        background-color: rgba(248, 231, 192, 0.35);
    }
    .intro-tekst,
.vinkjes-lijst {
    padding-left: 1.25rem;
}

    .container {
        padding: 0 0.25rem;
    }

    .container > .card-rooster,
    .container > .card-locaties,
    .container > .card-vakanties {
        margin: 1rem 0;
        width: 100%;
        max-width: 100%;
    }

    .card,
    .card-rooster,
    .card-locaties,
    .card-vakanties {
        width: 100%;
        max-width: 100%;
        padding: 1rem 0.5rem;
        font-size: 0.95rem;
    }

    /* Verberg desktop tabel, toon mobiel lijst */
    .rooster-desktop {
        display: none;
    }

    .rooster-mobiel {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        list-style: none;
        padding: 0;
    }

    .rooster-mobiel li {
        background: rgba(226, 214, 190, 0.6);
        border-radius: 8px;
        padding: 0.75rem 1rem;
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        border: 1px solid rgba(96, 73, 26, 0.6);
    }

    .rooster-mobiel li strong {
        font-size: 1rem;
        color: #3A2A1A;
    }

    .rooster-mobiel li span {
        font-size: 0.9rem;
    }


 

    /* Cards volledig binnen viewport */
    .card-locaties,
    .card-vakanties {
        width: 100%;
        padding: 0.75rem 1rem;
        box-sizing: border-box;
        background: rgba(226, 214, 190, 0.6);
        border-radius: 8px;
        border: 1px solid rgba(96, 73, 26, 0.6);
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
    }

    /* Tabellen omzetten naar mobiel-vriendelijke "lijst" */
    .card-locaties .rooster-table,
    .card-vakanties .rooster-table {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        padding: 0;
        width: 100%; /* past precies binnen card */
        border: none;
    }

    .card-locaties .rooster-table tr,
    .card-vakanties .rooster-table tr {
        display: flex;
        flex-direction: column;
        background: rgba(226, 214, 190, 0.6);
        border-radius: 8px;
        padding: 0.5rem 0.75rem;
        border: 1px solid rgba(96, 73, 26, 0.6);
    }

    .card-locaties .rooster-table th,
    .card-locaties .rooster-table td,
    .card-vakanties .rooster-table th,
    .card-vakanties .rooster-table td {
        display: block;
        width: 100%;
        text-align: left;
        padding: 0.25rem 0;
        white-space: normal; /* content kan nu netjes wrappen */
        font-size: 0.9rem;
        border: none;
    }
    .section-uniform {
    padding: 2rem 0.25rem;
    background-size: cover;
    background-position: 70% top;       /* ← meisje links uitlijnen */
    background-attachment: local;
    background-repeat: no-repeat;
    }

}