html,
body {
    width: 100%;
    min-height: 100%;
     font-family: "Open Sans", sans-serif;
    font-size: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0;
    margin: 0;
    color: #212121;
}

html {
    touch-action: manipulation;
    box-sizing: border-box;
}

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

section,
.helft,
article,
footer,
header,
.websites {
    overflow: hidden;
}


.atelier {
    background: url(../bgr/atelier2002.jpg) no-repeat 0 0;
    background-size: cover;
}

.stoel{
    background: url(../vrijwerk/stoelboek.jpg) no-repeat 50% 20%;
    background-size: cover;
    
}


.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -2;
}

.zwart {
    background-color: rgb(0, 0, 0);
}

.zwart-tr {
    background-color: rgba(0, 0, 0, .6);
}

.zwart-shade {
    background: #000;
    background: linear-gradient(rgba(0, 0, 0, .3), rgba(0, 0, 0, .6))
}

.wit {
    background: #fff;
}

.wit-tr {
    background: #fff;
    background: rgba(255, 255, 255, .8);
}

.fleks {
    -ms-box-orient: horizontal;
    -ms-display: flex;
    -webkit-display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    display: flexbox;
    flex-flow: row wrap;
    justify-content: center;
}
.end {
    -webkit-align-items: flex-end;
    align-items: flex-end;
}

.middle {
    -webkit-align-items: center;
    align-items: center;
}

.start {
    -webkit-align-items: flex-start;
    align-items: flex-start;
}
.center {
    text-align: center
}

.derde{
    width: 33%
}
.helft {
    width: 50%
}
.tweederde{
    width: 66%
}
.zestig{
    width: 60%
}

.veertig{
    width: 40%
}
.full{
    width: 100vw;
}

.auto {
    margin-left: auto;
    margin-right: auto;
}

.none,
#user{
    display: none
}

.rel {
    position: relative
}

.pad {
    padding: 30px
}

.pad1 {
    padding: 60px
}

.pad2 {
    padding-top: 90px;
    padding-bottom: 90px;
}

.bk{
    padding-top: 90px;
}
.bkm{
    margin-top: 90px;
}

.vp {
    min-height: 100vh
}


.upp {
    text-transform: uppercase
}
a {
    outline: 0;
    color: inherit;
    transition: all .2s ease;
    text-decoration: underline;
     text-decoration-style: solid;
    text-decoration-color: black;
       text-decoration-thickness: 2px;
       text-underline-offset: 4px;
       text-decoration-skip-ink: none;
}
a:hover{
      text-decoration-color: mediumvioletred;
       text-decoration-thickness: 4px;
       text-underline-offset: 8px;
    color: mediumvioletred;
}

.white {
    color: #fff
}

p {
    font-size: 1.1em;
    font-weight: 300;
    line-height: 160%;
    display: block;
    padding: 0 0 20px;
}
figcaption{
        font-size: .8em;
     color: gray;
    margin-top: 15px;
    }

h1 {
    font-family: "Playfair Display", serif;
     display: block;
    font-weight: 300;
    font-size: 2.4em;
   /* text-transform: uppercase;*/
     letter-spacing: 1px;
    margin: 0;
    padding:  0;
}
h2 {
    font-family: "Playfair Display", serif;
    font-size: 2.4em;
    font-weight: 300;
    line-height: 100%;
    margin: 0;
    display: inline-block;
    width: auto;
    display: block;
    letter-spacing: 1px;
    font-weight: 400;
    padding: 60px 0 0;
    opacity: .8
}
h2 a:hover,
h2 a:hover {
    letter-spacing: 2px
}

h2 a {
    padding: 20px 0 20px;
    transition: .2s ease;
}

h2 a:hover {
    letter-spacing: 1px
}

h3 {
    font-size: 2.4em;
    line-height: 140%;
    font-weight: 300;
    display: block;
    margin: 90px 0 0;
    padding: 0;
}

h4 {
    font-size: 150%;
    line-height: 140%;
    font-weight: 300;
    margin: 0;
    padding: 0 0 20px;
}


hr {
    display: block;
    margin: 30px auto;
    padding: 0;
    border: 0;
    width: 50px;
    color: #000;
    background: #000;
    height: 2px;
}


img {
    max-width: 100%;
    height: auto;
    border: 0;
    display: block;
   font-style: italic;
    font-size: 80%;
    color: #888;
    transition: all .3s ease;
}

.rond {
    width: 220px;
    border-radius: 50%;
    margin: 0 auto 30px auto;
}

.icon {
    width: 150px;
    height: 50px;
    position: fixed;
    z-index: 6;
    left: 30px;
    top: 20px;
    margin: 0;
    padding: 10px;
    opacity: .6
}

 img.icon:hover{
    opacity: 1
}

.knop {
    display: inline-block;
    font-size: .8em;
    font-weight: 700;
    line-height: 100%;
    width: auto;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 0;
    margin: 30px 30px 30px 0;
    text-align: center;
    border: 2px solid #000;
    transition: all .2s ease;
}

.knop a {
    display: block;
    padding: 15px 30px;
    text-decoration: none
}

.knop:active,
.knop:hover {
    background: black;
     border: 2px solid #000;
    color: white;
    transform: translate(0, 2px);
}
.social{
    display: inline-block;
    width: 30px;
    margin: 0;
}

.gallery{
     display: flex;
    flex-flow: row wrap;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0 60px 90px;
    position: relative;
}
.gallery .item img {
    width: 100%;
    border-radius: 1px;
}

.gallery .item:hover img {
    transform: scale(1.03);
}

@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: scale(.8);
    }
    20% {
        opacity: 0;
        transform: scale(.8);

    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.gallery .item {
    overflow: hidden;
   width: 18%;
    flex-grow: 1;
    flex-shrink: 1;
    margin: 30px;
    animation: fadeIn .8s ease-in-out forwards;
    transform-origin: center center;
 
}



/*input[type="radio"] {
    display: none;
}


highlight active categorie

input[type="radio"][id="portret"]:checked + label:after,
input[type="radio"][id="alles"]:checked + label:after,
input[type="radio"][id="grafiek"]:checked + label:after,
input[type="radio"][id="volwassenen"]:checked + label:after,
input[type="radio"][id="model"]:checked + label:after,
input[type="radio"][id="examenwerk"]:checked + label:after,
input[type="radio"][id="kinderen"]:checked + label:after,
input[type="radio"][id="anders"]:checked + label:after {
    content: "";
    color: #666;
    display: block;
    height: 1px;
    width: 30px;
    background: #000;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}*/

#toTop {
    position: relative;
     display: block;
    padding: 0;
    margin: 0;
    position: fixed;
    bottom: 30px;
    right: 30px;
    line-height: 50px;
    text-align: center;
    z-index: 1;
    height: 50px;
    width: 50px;
   
}

#toTop:after {
    content: "🔝";
   /* display: block;*/
    font-size: 2em;
     transition: .2s ease;
}

#toTop:hover:after {
    transform: translateY(-10px)
}

footer {
    font-weight: 400;
    background-color: #000;
    color: #ccc;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 0;
    padding: 60px 30px;
    text-align: center;
}

/*@media only screen and (max-width: 1024px) {

   .gallery .item {
        width: 30%;
      }

}*/

@media only screen and (max-width: 768px) {
    .helft,
    .derde,
    .veertig,
    .zestig{
        width: 100%;
    }
     .gallery .item {
        width: 40%;
        margin: 10px;
    }
    #toTop {
        bottom: 20px;
        right: 20px;
    }
}

@media only screen and (max-width: 450px) {
    h3 {
        font-size: 200%;
        line-height: 120%;
        margin-top: 60px;
    }
    figcaption{
        font-size: .7em
    }
    .icon{
        top: 30px;
        left: 0;
    }
    
    .knop {
    margin: 30px 0 15px;

    }
    .knop a{
        padding: 10px;
    }
    
     .pad{
        padding: 15px;
    }
    
    .pad1{
        padding: 30px;
    }
    .gallery{
    padding: 0 20px 90px;
    }
    
   
    .gallery img {
        height: auto;
        margin: 0;
        box-shadow: none
    }
    
}