* {
    margin: 0;
    padding: 0;
}

body {
    background-color: lightgrey;
    color: darkslategrey;
    font-family: "trebuchet ms",helvetica,sans-serif;
    font-size: 1em;
}

#websitevak {
    background-color: black;
    border: 5px solid black;
    margin: 0 auto;
    max-width: 1000px;
    width: 80%;
}

@media screen and (max-width: 800px) {
#websitevak {
    width: 95%;
}
}

@media screen and (min-width: 1440px) {
#websitevak {
    width: 65%;
}
}

#balkboven {
background-color: #CCFF99;
background-image : url(../afbeeldingen/logo.png);
background-position : center;
background-repeat : no-repeat;
background-size : contain;
-moz-border-radius: 45px 45px 0 0; /*Firefox*/
-webkit-border-radius: 45px 45px 0 0; /*Safari, Chrome*/
border-radius: 45px 45px 0 0;
margin-top : 1em;
margin-left: 0.5em;
width : 99%;
height : 170px;
}


@media screen and (max-width: 400px) {
#balkboven {
    background-size: 40%;
}
}

#balkboven p {
    font-variant: small-caps;
    margin-left: 7.25em;
    text-align: left;
}

@media screen and (max-width: 300px) {
#balkboven p {
    margin-left: 4.5em;
}
}

#balkboven p a {
    color: white;
    font-size: 2em;
    text-decoration: none;
}

@media screen and (max-width: 800px) {
#balkboven p a {
    font-size: 1.4em;
}
}

.ondertitel {
    color: white;
    font-size: 1.2em;
}

@media screen and (max-width: 800px) {
.ondertitel {
    font-size: 1em;
}
}

#menu {
    background-color: red;
    border-bottom: 5px solid black;
    border-top: 5px solid black;
    padding: 0 0 0 0.6em;
}

@media screen and (max-width: 800px) {
#menu {
    padding: 0;
}
}

#menuknop {
    color: white;
    display: none;
    font-size: 1.2em;
    height: 20px;
    font-variant: small-caps;
    font-weight: bold;
    letter-spacing: 0.05em;
    padding: 9px 0 9px 0.6em;
    text-decoration: none;
}

@media screen and (max-width: 800px) {
#menuknop {
    display: block;
}
}

#menu-icoon {
    display: inline-block;
    width: 22px;
    padding: 0 0.5em 0 0;
    position: relative;
}
 
#menu-icoon span {
    background-color: white;
    border: .5px solid white;
    height: 2px;
    margin-top: 3px;
    width: 100%;
    display: block;
}

#menu ul {
    list-style-type: none;
}


#hoofdmenu {
    display: none;
    max-width: 1000px;
    width: 100%;
}

@media screen and (min-width: 801px) {
#hoofdmenu {
    display: block !important;
}
}

#hoofdmenu:after {
    clear: both;
    content: " ";
    display: table;
}

#hoofdmenu > li {
    float: left;
    position: relative;
}

@media screen and (max-width: 800px) {
#hoofdmenu > li {
    float: none;
}
}

#hoofdmenu > li > a {
    color: white;
    display: block;
    font-size: 1em;
    font-variant: small-caps;
    padding: 0.4em 0 0.4em 2em;
    text-align: left;
    text-decoration: none;
}

@media screen and (max-width: 800px) {
#hoofdmenu > li > a {
    border-bottom: 1px solid white;
    padding: 0.4em 1em 0.4em 0.6em;
}
}

#hoofdmenu > li:first-child a {
    padding: 0.4em 0;
}

@media screen and (max-width: 800px) {
#hoofdmenu > li:first-child a {
    border-top: 1px solid white;
    padding: 0.4em 1em 0.4em 0.6em;
}
}

#hoofdmenu > li > a:hover {
    color: black;
}

@media screen and (max-width: 800px) {
#hoofdmenu > li > a:hover {
    background-color: black;
    color: white;
}
}

#hoofdmenu > li:hover ul {
    display: block;
    position: absolute;
    z-index: 2;
}

@media screen and (max-width: 800px) {
#hoofdmenu > li:hover ul {
    left: 8em;
    top: 0;
}
}

.submenu > ul {
    border-left: 2px solid black;
    border-right: 2px solid black;
    display: none;
}

.submenu > ul > li > a {
    background-color: gold;
    border-bottom: 1px solid black;
    border-top: 1px solid black;
    color: black;
    display: block;
    font-size: 1em;
    font-variant: small-caps;
    letter-spacing: 0.05em;
    padding: 0.5em 0.8em 0.5em 2em;
    text-decoration: none;
    width: 6em;
}

@media screen and (max-width: 800px) {
.submenu > ul > li > a {
    border-bottom: 1px solid white;
    border-top: 0 none transparent;
    color: black;
    padding: 0.4em 1em 0.4em 0.5em;
    width: auto;
}
}

.submenu > ul > li:first-child a {
    border-top: 5px solid black;
}

@media screen and (max-width: 800px) {
.submenu > ul > li:first-child a {
    border-top: 0 none transparent;
}
}

.submenu > ul > li:last-child a {
    border-bottom: 2px solid black;
}

@media screen and (max-width: 800px) {
.submenu > ul > li:last-child a {
    border-bottom: 0 none transparent;
}
}

.submenu > ul > li > a:hover {
    background-color: steelblue;
    color: white;
}

@media screen and (max-width: 800px) {
.submenu > ul > li > a:hover {
    color: black;
}
}

#hoofdvak {
    background-color: gold;
}

#tekstvak {
    background-color: white;
    float: left;
    width: 75%;
}

@media screen and (max-width: 800px) {
#tekstvak {
    width: 100%;
}
}

#inhoudtekstvak {
    border-right: 5px solid black;
    padding: 0.6em;
    min-height: 90vh;
}

@media screen and (max-width: 800px) {
#inhoudtekstvak {
    border-right: 0 none transparent;
}
}

#tekstvak p {
    font-size: 0.95em;
    line-height: 1.3em;
    padding: 0.5em 1em;
}

#tekstvak ul, #tekstvak ol {
    font-size: 0.95em;
    line-height: 1.3em;
    margin-bottom: 1em;
    margin-left: 2em;
}

#tekstvak ul li, #tekstvak ol li {
    left: 2em;
    padding-right: 2em;
    position: relative;
}

@media screen and (max-width: 800px) {
#tekstvak ul li, #tekstvak ol li {
    left: 0;
    padding-right: 0;
    position: static;
}
}

#tekstvak h1 {
    color: indigo;
    font-size: 1.3em;
    font-weight: bold;
    padding: 0.5em 0.7em;
}

#tekstvak h2 {
    color: red;
    font-size: 1em;
    font-weight: bold;
    padding: 0.5em 1em;
}

#tekstvak img {
    padding: 0.5em 1em;
}

#extravak {
    float: left;
    width: 25%;
}

@media screen and (max-width: 800px) {
#extravak {
    border-top: 5px solid black;
    width: 100%;
}
}

#inhoudextravak {
    background-color: steelblue;
    padding: 1.6em 0 0;
    text-align: center;
}

#inhoudextravak > h3 {
    color: red;
    font-size: 1em;
    font-variant: small-caps;
}

@media screen and (max-width: 800px) {
#inhoudextravak > h3 {
    padding: 0 0 0.6em;
}
}

#inhoudextravak > p {
    color: white;
    font-size: 0.9em;
    margin-bottom: 1em;
    padding: 0.8em;
}

#inhoudextravak img {
    height: auto;
    margin: 0.5em auto 1em;
    max-width: 80%;
}

@media screen and (max-width: 800px) {
#inhoudextravak img {
    max-width: 50%;
}
}

#inhoudsocialmediavak {
    background-color: gold;
    border-top: 5px solid black;
    color: white;
    padding: 1.4em 0.8em;
    text-align: center;
}

#inhoudsocialmediavak > h3 {
    color: indigo;
    font-size: 1em;
    font-variant: small-caps;
}

#balkbeneden {
    background-color: red;
    border-top: 5px solid black;
    clear: both;
    color: white;
    max-width: 1000px;
    width: 100%;
}

#inhoudbalkbeneden {
    padding: 0.5em 0;
    text-align: center;
    width: 100%;
}

#inhoudbalkbeneden span {
    display: inline-block;
    font-size: 0.75em;
    padding: 0.5em 2em;
    white-space: nowrap;
}

@media screen and (max-width: 800px) {
#inhoudbalkbeneden span {
    padding: 0.25em 0.5em;
}
}

#inhoudbalkbeneden > span > a {
    color: white;
    text-decoration: none;
}

.clearfix:before, .clearfix:after {
    clear: both;
    content: " ";
    display: table;
}

.links {
    float: left;
    margin: 0.2em 0.8em 0.6em 0.5em;
}

.rechts {
    float: right;
    margin: 0.2em 0.5em 0.6em 0.8em;
}

.gecentreerd {
    display: block;
    margin: 0 auto 1em;
}

.socialmedia {
    border: 0 none;
    margin: 0.2em 0.3em;
}

.responsive-player {
    position: relative;
    width: 100%;
    max-width: 100%; /* zorgt dat het nooit breder wordt dan container */
    height: auto; /* hoogte schaalt automatisch */
    border-radius: 12px;
    overflow: hidden;
}
.responsive-player iframe {
  width: 100%;
  height: 240px;  /* iets ruimer dan de embed zelf */
  border: 0;
  border-radius: 12px;
  display: block;
  overflow: hidden;
}

/* Mobiel: schermbreedte < 800px */
@media screen and (max-width: 799px) {
.responsive-player-full {
    width: 100vw; /* 100% van viewport breedte */
    height: auto;
    max-width: 100%;
    border-radius: 12px;
    overflow: hidden;
}

.responsive-player-full iframe {
    width: 100%;
    height: 220px; /* of auto voor proportioneel */
    border: 0;
}
}


.hide { 
display: none !important; 
} button { 
margin: 0; 
padding: 0; 
border: 0; 
outline: 0; 
background: transparent; 
} 
#stickplayer { 
width: 100%; 
} 
.ap { background: #000; 
position: fixed; 
left: 0; 
bottom: 0; 
width: 100%; 
height: 50px; 
max-height: 100%; 
margin: auto; 
font-family: Arial, sans-serif; 
font-size: 14px; 
user-select: none; 
color: #333; 
background: rgba(255, 255, 255, 0.06); 
opacity: 0.9; 
border-top: 1px solid rgba(255, 255, 255, 0.19); 
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); 
z-index: 9999; 
-webkit-transition: all 30s ease-in-out; 
-moz-transition: all 30s ease-in-out; -o-transition: all 30s ease-in-out; 
transition: all 1s ease-in-out; }.ap-inner {; margin: 0 auto; } .ap-panel { 
display: flex; background: #000000; } .ap-item { 
display: flex; 
flex: 1; 
justify-content: center; 
align-items: center; } .ap--track { 
flex: 1 40%; 
padding: 0 20px; } .ap-info { 
width: 100%; position: relative; align-self: flex-start; padding: 5px 0 0; } .ap-title { position: relative; 
overflow: hidden; padding-right: 80px; text-align: left; white-space: nowrap; text-overflow: ellipsis; 
color: #ffffff; } .ap-title:hover { position: relative; overflow: hidden; padding-right: 80px; 
text-align: left; white-space: nowrap; text-overflow: ellipsis; color: #f50; font-weight: bold; } .ap-time { 
position: absolute; top: 5px; right: 0; color: #ffffff; } .ap-time:hover { position: absolute; top: 5px; 
right: 0; color: #f50; font-weight: bold; } .ap-progress-container { padding: 5px 0 10px; 
cursor: pointer; } .ap-progress { position: relative; height: 3px; border-radius: 5px; 
background: #ffffff; } .ap-preload-bar, .ap-bar { position: absolute; left: 0; top: 0; bottom: 0; width: 0; 
border-radius: 5px 0 0 5px; background: rgba(0, 0, 0, 0.3); z-index: 999; } .ap-bar { background: #f50; 
z-index: 9999; } .ap-bar:after { position: absolute; top: 0; right: -5px; width: 12px; height: 12px; 
margin-top: -4px; content: ""; border-radius: 6px; background: #f50; opacity: 0; 
transition: opacity 0.3s ease; } .ap-progress-container:hover .ap-bar:after { opacity: 1; } .ap-controls { 
position: relative; z-index: 1000; display: block; height: 50px; cursor: pointer; 
transition: background 0.2s ease; text-align: center; color: #EEEEEE; border: 0; outline: 0; 
background: none; } .ap-controls svg { fill: #ffffff; } .ap-controls:hover svg { 
fill: #f50; } .ap-controls:active { 
background: rgba(0, 0, 0, 3); } .ap--playback > .ap-controls, .ap--settings > .ap-controls { 
flex: 0 25%; } .ap--pause, .playing > .ap--play { display: none; } .playing > .ap--pause { 
display: inline; } .ap-volume-container { z-index: 9999; } .ap-volume { position: absolute; right: 0; 
bottom: 50px; overflow: hidden; width: 100%; height: 0; cursor: pointer; visibility: hidden; 
transition: height 0.9s cubic-bezier(0.17, 0.72, 0.26, 1.23); background: rgba(255, 255, 255, 0.02); 
opacity: 0.7; border: 1px solid rgba(255, 255, 255, 0.02); border-bottom: 0; 
z-index: 9999; } .ap-volume-btn { display: block; text-align: center; 
width: 100%; } .ap-volume-btn > .ap--volume-off, .muted > .ap--volume-on { 
display: none; } .muted > .ap--volume-off { display: inline; } .ap-volume-container:hover { 
background: #1e88e5; } .ap-volume-container:hover .ap-volume { height: 120px; 
visibility: visible; } .ap-volume-progress { display: block; width: 4px; height: 100px; margin: 10px auto; 
background: rgba(0, 0, 0, 0.2); position: relative; border-radius: 3px; } .ap-volume-bar { 
position: absolute; left: 0; right: 0; bottom: 0; background: #f50; height: 50%; 
border-radius: 3px; } .ap-active { background: rgba(0, 0, 0, 0.15); 
opacity: 1; } @keyframes blink { from { opacity: 0; } 50% { opacity: 1; } to { 
opacity: 0; } } .playing > .ap--pause { 
animation: blink 1.5s linear infinite; } @media (max-width: 880px) { .ap-item > .ap-controls { 
flex: 1; } } @media (max-width: 550px) { .ap { min-width: 250px; } .ap, .ap-panel { 
height: auto; } .ap-panel { flex-wrap: wrap; } .ap--track { margin-bottom: 10px; padding: 0 20px; order: 1; 
flex: 1 1 100%; } .ap--playback, .ap--settings { flex: 1 1 50%; order: 2; } } ::-webkit-scrollbar { 
width: 0px; background: transparent; } ::-webkit-scrollbar-thumb { 
background: #f00; } @keyframes eq { 0% { height: 3px; } 50% { height: 20px; } 100% { height: 3px; } } .eq { 
display: flex; width: 20px; height: 20px; margin: 0 auto; justify-content: space-between; 
align-items: flex-end; } .eq-bar { width: 4px; background: rgb(255, 250, 250); } .eq-bar:nth-child(1) { 
animation: eq 0.8s ease-in-out infinite 0s; } .eq-bar:nth-child(2) { 
animation: eq 0.8s ease-in-out infinite 0.2s; } .eq-bar:nth-child(3) { 
animation: eq 0.8s ease-in-out infinite 0.4s; }#overflow { white-space: nowrap; max-width: 25em; 
overflow: hidden; }
