:root {
    --red: hsl(0, 78%, 62%);
    --cyan: hsl(180, 62%, 55%);
    --orange: hsl(34, 97%, 64%);
    --blue: hsl(212, 86%, 64%);
    --varyDarkBlue: hsl(234, 12%, 34%);
    --grayishBlue: hsl(229, 6%, 66%);
    --veryLightGray: hsl(0, 0%, 98%);
    --weight1: 200;
    --weight2: 400;
    --weight3: 600;
}

.attribution {
    font-size: 11px;
    text-align: center;
}

.attribution a {
    color: hsl(228, 45%, 44%);
}

h1:first-of-type {
    font-weight: var(--weight1);
    color: var(--varyDarkBlue);
}

h1:last-of-type {
    color: var(--varyDarkBlue);
}

@media (max-width: 400px) {
    h1 {
        font-size: 1.5rem;
    }
}

.header {
    text-align: center;
    line-height: 0.8;
    margin-bottom: 50px;
    margin-top: 100px;
}

.header p {
    margin: 0 auto;
    line-height: 2;
    color: var(--grayishBlue);
}

.box p {
    color: var(--grayishBlue);
}

.box {
    border-radius: 5px;
    box-shadow: 0px 30px 40px -20px var(--grayishBlue);
    padding: 30px;
    margin: 20px;
    margin-bottom: 30px;
    font: 0.9em;
}

img {
    float: right;
}

@media (max-width: 450px) {
    .box {
        height: 200px;
    }
}

@media (max-width: 950px) and (min-width: 450px) {
    .box {
        text-align: center;
        height: 180px;
    }
}

.cyan {
    border-top: 3px solid var(--cyan);
    background-color: white;
}

.red {
    border-top: 3px solid var(--red);
    background-color: white;
}

.blue {
    border-top: 3px solid var(--blue);
    background-color: white;
}

.orange {
    border-top: 3px solid var(--orange);
    background-color: white;
}

h2 {
    color: var(--varyDarkBlue);
    font-weight: var(--weight3);
}

@media (min-width: 950px) {
    .row1-container {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .row2-container {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .box-down {
        position: relative;
        top: 150px;
    }
    .box {
        width: 30%;
    }
    .header p {
        width: 30%;
    }
}


/* Gallery Cell CSS */


/* .gallery { */


/* background: rgb(255, 255, 255); */


/* } */

.gallery-cell {
    margin-right: 10px;
    background: rgb(255, 255, 255);
    counter-increment: gallery-cell;
    padding-bottom: 20px;
    height: 350px;
    width: 350px;
    font-size: 0.9em;
}

.h2_testi {
    margin-left: 30%;
}

.gallery-cell.is-selected {
    background: rgb(255, 255, 255);
}

.gallery-cell:before {
    display: block;
    text-align: center;
    line-height: 200px;
    font-size: 80px;
    color: white;
}