/* General styling */
@import 'general.css';
@import 'layout.css';

/* Elements */
@import 'hamburger_menu.css';
@import 'social_media.css';
@import 'support.css';
@import 'text_page.css';
@import 'newsletter.css';
@import 'updates.css';
@import 'highlighted_images.css';
@import 'stacked_images.css';


/* Body */
body {
  background-image: url('../images/stars_bg.png');
  padding-bottom: 130px;
  background-size: 120%;
}

/* Header */
.header_bar {
	position: absolute;
	z-index: 2;
	width: 100%;
	background-color: transparent;
	height: 90px;
}

/* Main header */
main > header:before {
	content: "";
    background-image: url('../images/border_girl.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: 99% 100%;
    bottom: -50px;
    right: 0;
    width: 100%;
    z-index: 1;
    left: 0;
    min-height: 530px;
}

main > header {
	position: relative;
	display: block;
    width: 100%;
    min-height: 780px;
    padding-top: 20px;
    background-color: #3e346f;
   	background-image: url('../images/nebulas_purple.png'), url('../images/stars.png');
	background-position: center center, 0 0;
    background-size: cover, 100%;
    background-attachment: fixed, fixed;
    background-repeat: no-repeat, repeat;
}

main > header h1.logo {
	background-image: url('../images/logo.png');
    background-repeat: no-repeat;
    width: 95%;
    margin-left: 2.5%;
    min-height: 250px;
    background-position: center center;
    background-size: contain;
    font-size: 0;
    display: block;
    margin-top: 20px;
    float: left;
}

main > header .header_content {
	float: none;
    width: 300px;
    display: block;
    margin: 0 auto;
}

main > header .header_text {
	position: relative;
	float: left;
    margin-left: 0;
    min-height: 250px;
    width: 100%;
}

main > header h2,
main > header h3 {
	margin: 0;
}

main > header h2 {
    background-image: url('../images/speech_bubble_big_bottom.svg');
    background-repeat: no-repeat;
    background-size: 300px;
    display: block;
    float: left;
    font-size: 25px;
    width: 300px;
    height: 244px;
    padding: 50px 20px 0 20px;
    box-sizing: border-box;
    text-align: center;
    color: #33256d;
}

main > header h3 {
    position: absolute;
    bottom: 0;
    right: 0;
    font-size: 16px;
    width: 167px;
    background-size: 155px;
    height: 97px;
    line-height: 19px;
    padding: 22px 20px 0 20px;
    box-sizing: border-box;
    text-align: center;
    color: #33256d;
    background-image: url('../images/speech_bubble_small.svg');
    background-repeat: no-repeat;
}

main > header a.button {
    background-color: #ef970b;
    border: 0;
    font-size: 24px;
    width: 81%;
    margin-right: 8%;
    position: relative;
    margin-top: 30px;
    padding: 20px 20px 15px 20px;
}

main > header a.button span {
	clear: both;
    display: block;
    font-size: 18px;
    line-height: 17px;
}

main > header a.button:after {
	content: url('../images/mouse.png');
	position: absolute;
	top: -134px;
	left: 0;
}

main > header .header_container {
	position: relative;
	display: block;
	width: 100%;
	margin-top: 30px;
    z-index: 2;
}


/* Header responsive behaviour */
@media screen and (min-width: 500px) {
    main > header {
        min-height: 920px;
    } 

    main > header h1.logo {
        min-height: 320px;
    }

    main > header .header_content {
        width: 450px;
    }

    main > header .header_text {
        min-height: 290px;
    }

    main > header h2 {
        background-size: 400px;
        font-size: 33px;
        width: 400px;
        margin-left: 20px;
        height: 244px;
        padding: 70px 20px 0 20px;
    }

    main > header h3 {
        font-size: 20px;
        width: 207px;
        background-size: 200px;
        height: 123px;
        line-height: 22px;
        padding: 30px 20px 0 20px;
    }
}

@media screen and (min-width: 800px) {
    main > header {
        min-height: 670px;
    }

    main > header h1.logo {
        width: 50%;
        min-height: 400px;
        margin-top: 20px;
        margin-left: 0;
        margin: 30px 2% 0 -2%;
    }

    main > header .header_content {
        width: 50%;
        float: left;
        max-width: 400px;
        margin-top: 100px;
    }

    main > header .header_text {
        min-height: 250px;
        margin-left: 0;
    }

    main > header h2 {
        width: 330px;
        background-size: 330px;
        padding: 36px 25px 0 25px;
        font-size: 26px;
        background-image: url('../images/speech_bubble_big.svg');
    }

    main > header h3 {
        font-size: 18px;
        height: 113px;
        width: 187px;
        background-size: 180px;
        line-height: 26px;
        padding: 22px 20px 0 20px;
    }
}


@media screen and (min-width: 1100px) { 
    main > header {
        min-height: 780px;
    }

    main > header h1.logo {
        background-image: url('../images/logo.png');
        background-repeat: no-repeat;
        width: 420px;
        background-size: contain;
        font-size: 0;
        display: block;
        margin-top: 20px;
        float: left;
        margin-left: -20px;
    }

    main > header .header_content {
        width: 500px;
        max-width: 100%;
        float: left;
    }

    main > header .header_text {
        margin-left: 20px;
        width: 500px;
        min-height: 320px;
    }

    main > header h2 {
        width: 457px;
        background-size: auto;
        padding: 55px 30px 0 50px;
        font-size: 33px;
    }

    main > header h3 {
        font-size: 23px;
        height: 147px;
        width: 237px;
        background-size: auto;
        line-height: 26px;
        padding: 37px 20px 0 20px;
    }

    main > section {
        top: -200px;
    }
}

@media screen and (min-width: 1175px) {
    main > header:after {
        content: "";
        background-image: url('../images/girl.png');
        position: absolute;
        background-repeat: no-repeat;
        right: 0;
        width: 100%;
        z-index: 1;
        left: 0;
        min-height: 530px;
        background-size: 420px;
        background-position: 114%;
        bottom: -55px;
    }
}

@media screen and (min-width: 1350px) {
    main > header h1.logo {
        width: 500px;
    }

     main > header:after {
        background-size: 480px;
        background-position: 108%;
        bottom: -42px;
    }
}

@media screen and (min-width: 1450px) {
    main > header .header_content {
        margin-top: 50px;
    }
}

/* Cause */
section#cause {
	padding-bottom: 0;
    z-index: 1;
}

#cause:after {
	content: "";
    background-image: url('../images/wave_white_1.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center center;
    bottom: -106px;
    width: 100%;
    z-index: 1;
    left: 0;
    min-height: 127px;
}

@media screen and (min-width: 1100px) {
    #cause h1 {
        max-width: 50%;
    }
}

#cause p {
	text-align: center;
    width: auto;
    float: none;
    max-width: 100%;
    margin-right: 0;
    font-weight: 600;
    position: relative;
}

#cause p > span {
	background-color: #f9ad33;
    width: 180px;
    height: 180px;
    display: block;
    border-radius: 50%;
    line-height: 180px;
    text-align: center;
    font-size: 60px;
    color: #5b2986;
    font-weight: 800;
    margin: 0 auto 20px auto;
}

@media screen and (min-width: 650px) {
    #cause p {
        max-width: 30%;
        margin-right: 5%;
        font-size: 18px;
        line-height: 20px;
        float: left;
    }

    #cause p:last-child {
        margin-right: 0;
    }

    #cause p > span {
        width: 160px;
        height: 160px;
        line-height: 160px;
    }

    #cause p:nth-child(3):before {
        content: url('../images/num_concerned.png');
        position: absolute;
        top: -117px;
        right: 58px;
        z-index: -1;
    }
}

@media screen and (min-width: 750px) {
    #cause h1 {
        max-width: 75%;
    }
}

@media screen and (min-width: 1100px) {
    #cause h1 {
        max-width: 50%;
    }

    #cause p {
        max-width: 30%;
        margin-right: 5%;
        font-size: 25px;
        line-height: 36px;
    }

    #cause p:last-child {
        margin-right: 0;
    }

    #cause p > span {
        width: 200px;
        height: 200px;
        line-height: 200px;
        font-size: 73px;
    }

    #cause p:nth-child(3):before {
        display: none;
    }

    #cause p:nth-child(2):before {
        content: url('../images/num_concerned.png');
        position: absolute;
        top: -111px;
        right: 88px;
        z-index: -1;
    }
}

/* Game */
#game {
	background-color: #f9ad34;
	background-image: url('../images/nebulas_orange.png'), url('../images/stars_bright.png');
	background-position: center center, -10% -190px;
    background-size: cover, 80%;
    background-attachment: fixed, fixed;
    background-repeat: no-repeat, repeat;
    padding-top: 50px;
	padding-bottom: 500px;
}

#game h1,
#game p {
	color: #fff;
}

#game:before {
    content: url('../images/boy_looking_left.png');
    position: absolute;
    bottom: 70px;
    left: auto;
    right: 0;
    width: 370px;
    height: 400px;
}

#game .button {
    z-index: 3;
    cursor: pointer;
    overflow: hidden;
    background-color: #f9ad34;
}

.home #game ul {
    border: 2px solid #fff;
    display: block;
    border-radius: 50px;
    width: 100%;
    float: right;
    padding: 20px;
    box-sizing: border-box;
    background-color: #f9ad34;
    margin-top: 190px;
    position: relative;
    margin-bottom: 0;
}

.home #game ul:before {
    content: url('../images/odie.png');
    position: absolute;
    top: -225px;
    right: 0;
    width: 173px;
    height: 234px;
    z-index: 2;
}

.home #game ul li {
    color: #fff;
    font-size: 22px;
    margin-left: 0;
    border-bottom: 1px dashed;
    padding-bottom: 15px;
    list-style: none;
}

.home #game ul li:last-child {
    border-bottom: 0;
    margin-bottom: 0;
}

@media screen and (min-width: 650px){
    #game {
        padding-top: 150px;
        padding-bottom: 350px;
    }

    #game:before {
        content: url('../images/boy.png');
        position: absolute;
        bottom: 0;
        left: 0;
        width: 500px;
        height: 400px;
    }

    .home #game ul {
        margin-bottom: 120px;
    }
}

@media screen and (min-width: 800px) {
    #game:after {
        content: url('../images/garfield_saucer.png');
        position: absolute;
        bottom: -80px;
        right: 30px;
        width: 500px;
        height: 400px;
        z-index: 2;
    }

    #game .half {
        width: 50%;
    }

    .home #game ul {
        width: 45%;
        margin-top: 50px;
    }

    .home #game ul:before {
        left: 30px;
        right: auto;
    }
}

@media screen and (min-width: 1200px) {
     .home #game ul {
        margin-bottom: 0;
    }
}


/* Divider */
.divider {
	width: 100%;
	background-image: url('../images/divider.svg');
	background-repeat: no-repeat;
	background-size: cover;
    top: -200px;
    position: relative;
    float: left;
    padding: 50px 0 70px 0;
}

body.text_page .divider {
    top: 0;
}

.divider.orange {
	background-image: url('../images/divider_orange.svg');
}

@media screen and (min-width: 800px){
    .divider {
        height: 100px;
        background-size: contain;
    }
}

@media screen and (min-width: 1450px){
    .divider {
        height: 180px;
        background-size: cover;
    }
}

/* Testimonials */
#testimonials:before {
	content: "";
    background-image: url('../images/wave_white_2.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center center;
    top: -200px;
    width: 100%;
    z-index: 1;
    left: 0;
    min-height: 267px;
}

#testimonials {
	background-image: url('../images/stars.png');
	background-repeat: repeat;
}

/* Partners */
#partners:before {
	content: "";
    background-image: url('../images/wave_white_2.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center center;
    top: -194px;
    width: 100%;
    z-index: 1;
    left: 0;
    min-height: 267px;
}

.partner_overview li {
	margin-left: 0;
    list-style: none;
    width: 30%;
    width: 80%;
    margin-left: 10%;
    min-height: 100px;
    display: inline-block;
    float: left;
    box-sizing: border-box;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    font-size: 0;
}

.partner_overview li#effectief_onderwijs {
	background-image: url('../images/partners/effectief_onderwijs.jpg');
}

.partner_overview li#rug {
	background-image: url('../images/partners/rug.svg');
}

.partner_overview li#grendel_games {
	background-image: url('../images/partners/grendel.png');
}

@media screen and (min-width: 500px) {
    .partner_overview li {
        width: 40%;
        margin-left: 0;
    }

    .partner_overview li:first-child {
        margin-right: 10%;
    }

    .partner_overview li:last-child {
        margin-left: 30%;
        margin-top: 20px;
    }
}

@media screen and (min-width: 900px) {
    .partner_overview li {
        width: 30%;
        margin-left: 0;
        margin-top: 0;
        margin-right: 5%;
    }

    .partner_overview li:last-child {
        margin: 0;
    }

    .partner_overview li:first-child {
        margin-right: 5%;
    }
}

@media screen and (min-width: 1450px){
    #partners:before {
        background-size: cover;
        top: -284px;
        min-height: 357px;
    }
}

/* Footer */
footer {
	background-color: #fff;
    float: left;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-top: -15px;
    z-index: 1;
    position: relative;
    float: left;
   	display: inline-block;
   	background-size: 100% 100%;
   	background-repeat: no-repeat;
   	background-color: #5b3285;
    min-height: 160px;
}

footer:before {
	content: "";
    background-image: url('../images/wave_purple_1.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center center;
    top: -88px;
    display: block;
    width: 100%;
    left: 0;
    min-height: 90px;
}

footer .social_media_container {
	width: 39%;
	height: auto;
	margin-bottom: 20px;
	position: absolute;
	top: 20px;
	right: 20px;
}

footer .copyright {
	width: auto;
	position: absolute;
    bottom: 10px;
    left: 3%;
}

footer .copyright p {
	color: #fff;
    font-size: 16px;
    line-height: 18px;
    margin-bottom: 0;
    display: inline-block;
}

footer .copyright p:first-child {
	margin-right: 20px;
}

footer:after {
	content: url('../images/garfield_flying.png');
	position: absolute;
	top: -94px;
    left: 40%;
}

@media screen and (min-width: 750px) {
    footer {
        min-height: 90px;
    }
}

@media screen and (min-width: 800px) {
    footer .copyright p {
        font-size: 18px;
        line-height: 25px;
    }
}

/* Contact */
#support {
    margin-top: 0;
    padding-top: 150px;
    position: relative;
    display: block;
    width: 100%;
    min-height: 600px;
    background-position: center center, 0 0;
    margin-bottom: -70px;
    background-color: #f9ad34;
    background-image: url('../images/nebulas_orange.png'), url('../images/stars_bright.png');
    background-position: center center, -10% -190px;
    background-size: cover, 70%;
    background-attachment: fixed, fixed;
    background-repeat: no-repeat, repeat;
}

@media screen and (min-width: 750px) {
    #support .half {
        position: relative;
    }
}

@media screen and (min-width: 850px) {
    #support .half:after {
        content: "";
        background-image: url('../images/logo.png');
        position: absolute;
        background-repeat: no-repeat;
        right: -105%;
        width: 100%;
        z-index: 1;
        min-height: 300px;
        background-size: contain;
        top: 20%;
        background-position: center center;
    }
}

@media screen and (min-width: 1100px) {
    #support {
        padding-top: 220px;
        margin-bottom: -170px;
    }

    #support .half:after {
        right: -115%;
        min-height: 400px;
    }
}

#support #contactform input#submit {
    font-family: 'Carter One', cursive;
    color: #fff;
    float: right;
    margin-top: 0;
    text-align: center;
    border-radius: 50px 50px 50px 50px;
    background-color: #f9ad34;
    border: 2px solid #fff;
    font-size: 24px;
    padding: 20px 20px 15px 20px;
    width: 56%;
    margin-right: 4%;
    cursor: pointer;
}

#support #contactform input#submit:hover {
    background-color: #fff;
    color: #f9ad34;
}

#support #contactform input, #support #contactform textarea {
    border-radius: 50px;
    border-radius: 30px;
    font-size: 18px;
    padding-left: 30px;
    padding-top: 10px;
    box-sizing: border-box;
    font-family: 'Assistant', sans-serif;
    font-weight: 300;
    color: #535353;
    font-size: 22px;
    line-height: 30px;
}

/* De game */
#theory:after {
    content: "";
    background-image: url('../images/wave_white_1.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center center;
    bottom: -106px;
    width: 100%;
    z-index: 1;
    left: 0;
    min-height: 127px;
}

#dashboard:before {
    content: "";
    background-image: url('../images/wave_white_2.svg');
    position: absolute;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center center;
    top: -194px;
    width: 100%;
    z-index: 1;
    left: 0;
    min-height: 267px;
}

@media screen and (min-width: 750px) {
    #theory .twothird_column:after {
        content: "";
        background-image: url('../images/badges.png');
        position: absolute;
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center center;
        top: 30%;
        width: 35%;
        z-index: 1;
        right: 0;
        min-height: 267px;
    }
}

