/* Import fonts from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Alfa+Slab+One&family=Patua+One&family=Schoolbell&family=Poppins&display=swap');

/*** SUMMARY ***

0) Variables
1) Fonts, text en algemene zaken
2) Positionering, Size & Layout
3+4) Removed because they were not used
5) Responsive design

*** END SUMMARY ***/

/* 0) Variables */

:root {
    --nutsbedrijven-background: linear-gradient(to top right, teal, #3488A5);
    --visserij-background: linear-gradient(to top right, #f44336, #ff5722);
    --over-ons-background: linear-gradient(to top right, #6311c2, #810be2);
    --test-background: linear-gradient(to top right, #0fc20f, #0be241);
    --page-background: #f2fbff;
}

/* 1) Fonts, text en algemene zaken */

html, body {
    font-family: 'Poppins', Arial, sans-serif;
    font-size: 14px;
    color: #004065;
    background-color: var(--page-background);
    text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6, .age, .open {
    font-family: 'Patua One', sans-serif;
}

.pagetitle {
    color: #004065;
    font-size: 50px;
    margin: 0;
}
.pagetitle span {
    font-size: 30px;
    font-weight: normal;
    display: block;
}

.sep {
    height: 25px;
    margin: 20px 0;
    background-color: #004065;
    margin-top: 10px;
}

.age, .open {
    font-size: 21px;
    margin-top: 0;
    margin-bottom: 0;
}

.vak h1 {
    font-size: 33px;
    margin-bottom: 10px;
}

.vak:hover {
    transform: scale(1.05);
    z-index: 2;
}

.vak.opvulling:hover {
    transform: none;
}

.vak.opvulling {
    padding: 0;
    overflow: hidden;
}

.vak img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.visserij {
    background: var(--visserij-background)
}

.nutsbedrijven {
    background: var(--nutsbedrijven-background);
}

.over-ons {
    background: var(--over-ons-background);
}

.test {
    background: var(--test-background);
}

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

a:hover {
    text-transform: none;
    text-decoration: none;
    font-weight: bolder !important;
    color: #000000;
}

a.vak {
    color: white;
    font-weight: normal !important;
}

/* 2) Positionering, Size & Layout */

html {
    box-sizing: border-box;
}
*, *:before, *:after {
    box-sizing: inherit;
}

html, body {
    height: 100%;
    margin: 0;
    width: 100%;
}

body {
    padding-top: 10px;
    padding-right: 15px;
    padding-left: 15px;
    margin: auto;
}

.vak {
    text-align: center;
    padding: 30px;
    border-radius: 15px;
    color: white;
    height: 270px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* 5) Responsive design */

main {
    display: grid;
    grid-template-rows: auto;
}

@media screen and (min-width: 650px) {
    .content {
        display: grid;
        grid-template-rows: auto;
        grid-template-areas: "left right";
        grid-template-columns: 25% 50%;
        gap: 15px;
    }
}

@media screen and (min-width: 768px) {
    body {
        width: 750px
    } 
    main {
        grid-template-areas: "left right";
        grid-template-columns: 49% 49%;
        gap: 1%;
    }   
}

@media screen and (min-width: 992px) {
    body {
        width: 970px;
    }
    main {
        grid-template-areas: "left center right";
        grid-template-columns: 32% 32% 32%;
        gap: 1.5%;
    } 
}

@media screen and (min-width: 1200px) {
    body {
        width: 1170px
    }

    main {
        grid-template-areas: "left center1 center2 right";
        grid-template-columns: 24% 24% 24% 24%;
        gap: 2.5% 1.22%;
    }
}

@media screen and (max-width: 1200px) {
    
}

@media screen and (max-width: 768px) {
    .vak:not(:last-child) {
        margin-bottom: 10px;
    }
    .logo-hvm {
        display: none;
    }
}

/* 6) Images */

.logos-wrapper {
    text-align: center;
}

.sponsor {
    display: inline;
    margin: 20px;
    max-width: 30%;
}

.logo {
    max-width: 149px;
}
.logo-hvm {
    max-width: 292px;
    vertical-align: bottom;
    padding-top: 20px;
    float: right;
}