@import url('https://fonts.googleapis.com/css2?family=Cabin:ital,wght@0,400;1,500;1,600;1,700&family=Kanit:wght@500;700;800&family=Open+Sans:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bad+Script&family=Parisienne&family=Playball&display=swap');

html {
    /* border-box box model allows us to add padding and border to our elements without increasing their size */
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    /* A system font stack so things load nice and quick! */
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 10px;
    color: var(--black);
}


:root {
	--color-primary: #6f6af8;
	--color-primary-light: hsl(242, 91%, 69%, 18%);   
	--color-primary-variant: #5854c7;
	--color-red: #da0f3f;
	--color-red-light: hsl(346, 87%, 46%, 15%);
	--color-green: #00c476;
	--color-green-light: hsl(156, 100%, 38%, 15%);
	--color-gray-900: #da0f3f;
	--color-gray-700: #da0f3a;
	--color-gray-300: #345Ffd;
	--color-gray-200: #d45gfg;
	--color-white: #c9c5b6;
	--color-bg: #0f0f3e;
	
	--transition: all 300ms ease;
	
	--container-width-lg: 74%;
	--container-width-md: 88%;
	--form-width: 40%;
	
	--card-border-radius-1: 0.6rem;
	--card-border-radius-2: 1.0rem;
	--card-border-radius-3: 1.8rem;
	--card-border-radius-4: 2rem;
	--card-border-radius-5: 5rem;
}

#affirmation-box {
    position: fixed;  
    bottom: 0;        
    left: 0;          
    width: 100%;      
    height: 100px;    
    font-size: 30px;
    color: white;     
    text-align: center; 
    line-height: 100px; 
    display: none;    
    opacity: 0;        
    z-index: 11; /* Ensure it appears above other elements */
    background: linear-gradient(90deg, green, limegreen, orange, red, indigo, violet); /* Rainbow gradient */
    background-size: 700%; /* Make the gradient larger to animate it */
    animation: gradient-animation 4s ease infinite; /* Animate the gradient */
	word-wrap: break-word; /* Allow long words to break and wrap */
    overflow-wrap: break-word;
}

#affirmation-box {
  font-size: calc(23px + (31 - 23) * ((100vw - 340px) / (520 - 340)));
  font-size: min(31px, calc(23px + (31 - 23) * ((100vw - 340px) / (520 - 340))));
}

@media (max-width: 340px) {
  #affirmation-box {
    font-size: 23px; /* Stops the font size calculation at 23px when viewport width is less than 340px */
  }
}




@keyframes gradient-animation {
    0% {
        background-position: 0% 50%; /* Start at the left */
    }
    50% {
        background-position: 100% 50%; /* Move to the right */
    }
    100% {
        background-position: 0% 50%; /* Back to the start */
    }
}

/* Styles for the iframe video container */

.image-container a {
    display: block; /* Make the link a block element */
    width: 100%; /* Ensure it takes the full width of its container */
    height: 100%; /* Ensure it takes the full height of its container */
    margin: 0; /* Reset any default margin */
    padding: 0; /* Reset any default padding */
    text-decoration: none; /* Remove underline */
    box-sizing: border-box; /* Include padding and border in element's total width and height */
}

.image-container img {
    display: block; /* Remove space below image */
    width: 100%; /* Ensure the image takes the full width of its container */
    height: auto; /* Maintain aspect ratio */
    margin: 0; /* Reset any default margin */
    padding: 0; /* Reset any default padding */
    box-sizing: border-box; /* Include padding and border in element's total width and height */
}

.video-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8); /* Semi-transparent black background */
    z-index: 11;
    justify-content: center;
    align-items: center;
}

#video-container {
    width: 100%;
    max-width: 960px;
    height: 56.25vw; /* 16:9 aspect ratio */
    max-height: 540px; /* Adjust height as needed */
    position: relative;
}

#video-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    background: none;
    border: none;
    color: white;
    font-size: 30px;
    cursor: pointer;
}

.play-glow {
    animation: play 1s ease-in-out infinite alternate;
}

@keyframes play {
    0% {
        box-shadow: 0 0 0px #fff;
    }
    100% {
        box-shadow: 0 0 8px 2px rgb(29 175 237);
    }
}


/* resend-pass, activate acc font */

.control-forms {
  color: #000000;
  font-family: 'Kanit', sans-serif;
  font-weight: 200;
  font-size: 18px;
  padding: 15px;
}

.link-control-form {
  color: #0773ff;
  font-family: 'Kanit', sans-serif;
  font-weight: 400;
  font-size: 18px;
}

/* BLOG Section Start */

.link-list li a {
    font-weight: normal; /* link list normal font weight */
}

#body {
  resize: vertical; 
  min-height: 100px; 
  max-height: 850px; 
}

.post__title {
  font-size: 2rem;
  margin: 1rem 0;
  line-height: 26px;
  color: #555555;
  font-family: 'Kanit', sans-serif;
  font-weight: 100;
}


button {
  padding: 5px 16px;
}


.img-responsive {
    max-width: 100%;
    height: auto;
}

.table-wrapper {
    height: auto;
}

.table-add-post {
    width: 100%;
}

.table-add-post tr:nth-child(even) td {
    background-color: #dbdbdb;
}

.table-add-post tr:nth-child(odd) td {
    background-color: white;
}

.table-add-post thead {
    background-color: #0080ff; 
    color: white; 
}

.error-message {
  margin-inline: auto;
  padding: 1px 1px;
  width: calc(100% - 0px);
  max-width: 1200px;
  background: #b72b2b78;
  text-align: center;
  text-decoration: none;
  color: #ff7979;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 17px;
}

.container-blog {
	margin-inline: auto;
    padding: 20px 20px;
    width: calc(100% - 0px);
    max-width: 1200px;
}

.singlepost {             
	width: 85%; 
    margin: 0 auto;
}

@media (max-width: 960px) {
  .singlepost {
    width: 97%;
  }
}

.singlepost__thumbnail {             
	margin-top: 20px;
	margin-bottom: 20px;
}

.singlepost .singlepost-image {
    max-width: 100%;
    height: auto; 
}

.anus-structuur { 
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  grid-gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 1000px; 
  margin: 0px auto;
}

.post {
  max-width: 275px; 
  margin: 0 auto; 
}


img content {
	display: block;
	width: 100%;
	object-fit: cover;
	overflow: hidden;
}


.common-parent h1 {
  color: #000000;
  transition: var(--transition);
  font-family: 'Kanit', sans-serif;
  font-weight: 200;
  font-size: 31px;
  line-height: 1.1;
}

.common-parent h2 {
  font-size: 2rem;
  margin: 1rem 0;
  line-height: 26px;
  color: #171b22;
  font-family: 'Kanit', sans-serif;
  font-weight: 100;
}

.common-parent h3 {
  font-size: 2rem;
  margin: 1rem 0;
  color: var(--color-white);
  font-family: 'Kanit', sans-serif;
  font-weight: 300;
}

.common-parent h4 {
  font-size: 2rem;
  margin: 1rem 0;
  color: var(--color-white);
  font-family: 'Kanit', sans-serif;
  font-weight: 300;
}

.common-parent h5 {
  font-size: 1.4rem;
  margin: 0.0rem;
  color: #999999;
  font-family: 'Kanit', sans-serif;
  font-weight: 100;
}

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

.post__title a:hover {
  color: #3c2cb9; 
}

.common-parent p {
  text-decoration: none;
  color: #a7a2a2;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 15px;	
}

.common-parent a.paragraph-link {
  text-decoration: none;
  color: #a7a2a2;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 15px;
}

.common-parent a.paragraph-link:hover {
  color: #3c2cb9; 
}

.singlepost .common-parent p {
  text-decoration: none;
  color: #3a3a3a;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 19px;	
}


.link-terug {
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  padding: 5px;
  border-radius: 10px;
  color: #3278fd;
  font-size: 19px;
  font-weight: 300;
  border: solid #3278fd 1px;
  width: 220px;
  margin: 20px;
  margin-top: 30px; 
  margin-right: auto; 
  margin-bottom: 0; 
  margin-left: auto; 
}

.link-terug:hover {
  border: solid #94b9ff 1px;
  color: #0059ff;
}


.category__button {
  text-decoration: none;
  color: #FFFFFF;
  transition: var(--transition);
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 13px;
  margin: 3px;
  background: #0063ff;
  display: inline-block;
  padding: 0.5rem 1rem;
  border-radius: var(--card-border-radius-2);
  text-align: center;
}

.category__buttons-container {
  background-color: #171b22;
  text-align: center;
}

.category__button:hover {
  background-color: #facc18;
  color: #000000;
}

.post__thumbnail {
  margin-bottom: 1.6rem;
  transition: filter 0.9s ease;
  cursor: pointer;
  filter: grayscale(0%);
}

.post:hover .post__thumbnail {
  filter: grayscale(50%); 
}

.post__author {
	display: flex;
	gap: 1rem;
	margin-top: 1.2rem;
}

.post__author-avatar {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 20px;
  overflow: hidden;
}

.post__author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center; 
  display: block;
}

.common-parent .post__thumbnail {
	height: fit-content;
	justify-self: right;
}


.blog-section.posts {
  border: 1px solid #c2c6cd; 
  width: 100%; 
  margin: 0 auto; 

  
  @media (max-width: 350px) {
    width: 90%;
    margin: 0 auto;
  }
}

.blog-section.posts:hover {
  border: 1px solid #979ba3; 
}

.content-blog {
  background: #FFFFFF;
  border: 1px solid #788492;
  min-height: 336px;
  max-width: 1200px;
  margin: 10px auto;
  /* padding: 0px 20px; */
  border-radius: 9px;
  width: calc(100% - 20px);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
}

.common-parent .category__title {
  text-align: center;
}


.form__section {
	display: grid;
	place-items: center;
	height: 100vh;
	padding: 120px 40px 40px 40px;
	max-width: 960px;
	margin: 0 auto;
}

.form__section-container {
	width: 100%;
}

.alert__message {
	background: #ffffff;
	padding: 0.8rem 1.4rem;
	margin-bottom: 1rem;
	border-radius: 12px;
}

.alert__message.error {
	background: #8c0000;
	color: #ffffff;
}

.alert__message.success {
	background: #068200;
	color: #ffffff;
}

form.blog-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.form__control {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

form.blog-form input,
form.blog-form textarea,
form.blog-form select {
  padding: 1.4rem 1.7rem;
  background-color: #ffffff;
  border-radius: 12px;
  resize: none;
  color: #000000;
  border: none;
}

.form-text {
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: 300;
  color: #FFFFFF;
}

.form-button {
  background-color: #facc18;
  border-radius: 12px;
  color: #3e434b;
  border: 2px solid #f5cc24;
  padding: 10px 25px;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: 400ms;
}


.form-button:hover {
  background-color: #e0b813;
  border: 2px solid #FFFFFF; 
}


.nav__logo {
    color: #000000;
    transition: var(--transition);
    font-family: 'Kanit', sans-serif;
    font-weight: 200;
    font-size: 29px;
	text-decoration: none;
}


.top-nav {
    height: 110px;
    background-color: #FFFFFF; 
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
	z-index: 7;
	box-shadow: 0px 0px 10px #000000;
}

.container-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    padding: 0 40px;
}

.avatar-container {
    position: relative;
}

.avatar {
    display: flex;
    align-items: center;
}

.avatar-menu {
    position: absolute;
    top: calc(100% + 15px); 
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff; 
    list-style-type: none;
    padding: 0px;
    margin: 0;
    display: none;
}

.avatar-menu li {
	transition: background-color 0.3s ease;
	padding-left: 40px;
	padding-right: 40px;
	padding-top: 20px;
	padding-bottom: 20px;
}

.avatar-menu li:hover {
    background-color: #f5cc24; 
}

.avatar-menu.active {
    display: block;
	box-shadow: 0px 7px 10px rgba(0, 0, 0, 0.5), 
                0px 0px 10px rgba(0, 0, 0, 0.0);
}

.avatar-menu li:last-child {
    margin-bottom: 0;
}

.avatar-menu a {
    color: #333; 
    text-decoration: none;
}

.avatar-link img {
    width: 80px; 
    height: 80px; 
    border-radius: 50%; 
    border: 5px solid #dbdbdb; 
	aspect-ratio: 1/1;
	object-fit: cover;
}


.form__control {
    color: #FFFFFF;
    transition: var(--transition);
    font-family: 'Open-sans', sans-serif;
    font-weight: 200;
    font-size: 15px;
	text-decoration: none;
}

.dashboard__container-blog img {
    width: 17px; 
    height: 17px; 
	filter: invert(100%);
}

.dashboard {
    margin-top: 112px;
	background-color: #171b22;
}

ul {
    list-style-type: none; 
}

.form-button-dash {
  background-color: #b9330d;
  border-radius: 12px;
  color: #3e434b;
  padding: 5px 12px;
  font-family: 'Open Sans';
  font-weight: 400;
  cursor: pointer;
  transition: 400ms;
  text-decoration: none;
  color: #FFFFFF;
  transition: var(--transition);
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 13px;
  margin: 3px;

}


.form-button-dash:hover {
  background-color: #e73807;
}

.form-button-dash-edit {
  background-color: #076d09;
  border-radius: 12px;
  color: #3e434b;
  padding: 5px 12px;
  font-family: 'Open Sans';
  font-weight: 400;
  cursor: pointer;
  transition: 400ms;
  text-decoration: none;
  color: #FFFFFF;
  transition: var(--transition);
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 13px;
  margin: 3px;
}


.form-button-dash-edit:hover {
  background-color: #09b70d;
}



main table tbody td {
  color: #FFFFFF; 
  font-weight: bold; 
  font-family: 'Open Sans';
  font-weight: 200;
  font-size: 13px;
}

main table th {
  color: #FFFFFF;
  color: #FFFFFF; 
  font-weight: bold; 
  font-family: 'Open Sans';
  font-weight: 200;
  font-size: 15px;
}


main {
  width: 100%; 
}

main table {
  width: 100%; 
  text-align: left; 
}

main table th {
  background-color: #ffffff21;
  padding: 0.8rem;
  border-radius: 6px;
}

main table td {
  padding: 1.0rem;
  border-bottom: 1px solid #ffffff21;
}

main table tr:hover td {
  background-color: #1c1e29;
  padding: 1.0rem;
  border-bottom: 1px solid #ffffff21;
}


.dashboard aside a {
	background-color: #181b22;
	display: flex;
	gap: 2rem;
	align-items: center;
	padding: 2.6rem;
	border-radius: 6px;
  text-decoration: none;
  color: #FFFFFF;
  transition: var(--transition);
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 13px;
  margin: 3px;
}

.dashboard aside a:hover {
	background-color: #4b24f5;
	display: flex;
	gap: 2rem;
	align-items: center;
	padding: 2.6rem;
	box-shadow: 0px 8px 90px #4b24f5;
}

.dashboard aside a.active {
    background-color: #4b24f5;
	display: flex;
	gap: 2rem;
	align-items: center;
	padding: 2.6rem;
	box-shadow: 0px 8px 90px #4b24f5;
}


aside, main {
    flex: 1; 
    max-width: 100%; 
    margin: 0; 
}

aside {
    background-color: #292e3b;
	padding: 1.6rem;
	border-radius: 6px;
}

main {
    background-color: #2e3343;
	padding: 20px;
	border-radius: 6px;
}

aside ul li img,
aside ul li h5 {
    display: inline-block; 
    vertical-align: middle; 
    margin-right: 4px; 
}

aside ul {
    margin: 0;
    padding: 0; 
}

.containers {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
	
	
	@media (min-width: 900px) {
    .containers {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
    }

    aside {
        background-color: #292e3b;
	    padding: 1.6rem;
	    border-radius: 6px;
	    flex: 0 0 25%; 
		max-width: 25%;
		border-bottom: 1px solid #FFFFFF;
    }

    main {
        flex: 1; 
		max-width: 100%; 
        background-color: #2e3343;
	    padding: 20px;
	    border-radius: 6px;
		margin-left: 20px;
		border-bottom: 1px solid #FFFFFF;
    }
}



/* BLOG Section Ended. */



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

body {
  background: #31363e; 
  background-repeat: no-repeat; 
  margin: 0px;
  }
  
  .body-dark-background {
  background: #171b22; 
}
  
  ::selection {
    background-color: #facc18; 
    color: #000000; 
}
  
 /* Login Page */
 
  .container-login {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh; /* Set the container height to the full viewport height */
}
  
.login, .register {
  width: 400px;
  background-color: #ffffff;
  margin: 100px auto;
  box-shadow: 0px 8px 90px #c5695b;
  animation: shadowChange 5s infinite;
}

@keyframes shadowChange {
  0% {
    box-shadow: 0px 8px 150px #c5695b;
  }
  25% {
    box-shadow: 0px 8px 60px #6a82ab;			
  }
  50% {
    box-shadow: 0px 8px 90px #58b368;
  }
  75% {
    box-shadow: 0px 8px 120px #d88e5a;
  }
  100% {
    box-shadow: 0px 8px 150px #c5695b;
  }
}

  .login h1, .register h1 {
  text-align: center;
  color: #2a2a2a;
  font-size: 24px;
  padding: 20px 0 20px 0;
  border-bottom: 1px solid #dee0e4;
}

  .login .links, .register .links {
  display: flex;
  padding: 0 15px;
}

  .login .links a, .register .links a {
  color: #9da3ac;
  text-decoration: none;
  display: inline-flex;
  padding: 0 10px 10px 10px;
  font-weight: 500;
  font-size: 24px;
}

.login .links a:hover, .register .links a:hover {
  color: #9da3ac;
  
}

.login .links a.active, .register .links a.active {
  border-bottom: 3px solid #d13d00;
  color: #2a2a2a;
}

.login form, .register form {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 20px;
}

.login form label, .register form label {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 12%;
  height: 50px;
  background-color: #525964;
  color: #ffffff;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.login form input[type="password"], .login form input[type="text"], .login form input[type="email"], .register form input[type="password"], .register form input[type="text"], .register form input[type="email"] {
  width: 80%;
  height: 50px;
  border: 1px solid #dee0e4;
  border-left: 0;
  margin-bottom: 20px;
  padding: 0 15px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  outline: 0;
  font-size: 16px;
}

.login form input[type="password"]::placeholder, .login form input[type="text"]::placeholder, .login form input[type="email"]::placeholder, .register form input[type="password"]::placeholder, .register form input[type="text"]::placeholder, .register form input[type="email"]::placeholder {
  color: #8e97a3;
}

.login form input[type="password"]:focus, .login form input[type="text"]:focus, .login form input[type="email"]:focus, .register form input[type="password"]:focus, .register form input[type="text"]:focus, .register form input[type="email"]:focus {
  border: 1px solid #c2c6cd;
  border-left: 0;
}

.login form input[type="submit"], .register form input[type="submit"] {
  width: 100%;
  padding: 15px;
  margin-top: 20px;
  background-color: #ff6c00;
  border: 0;
  cursor: pointer;
  font-weight: 500;
  color: #ffffff;
  transition: background-color 0.2s;
  border-radius: 0;
  appearance: none;
  font-size: 19px;
  font-weight: 700;
}

.login form input[type="submit"]:hover, .register form input[type="submit"]:hover {
  background-color: #5ccb2f;
  transition: background-color 0.2s;
}

.login form #rememberme, .register form #rememberme {
  width: 100%;
  height: auto;
  padding: 5px 20px;
  background-color: transparent;
  color: #000;
  justify-content: flex-start;
}

.login form #rememberme input, .register form #rememberme input {
  transform: scale(1.3);
  margin-right: 7px;
}

.login form .msg, .register form .msg {
  padding: 0 20px;
  width: 100%;
  font-size: 12px;
  font-weight: 700;
  color: #FF0000;
  text-align: center;
}

.login form .captcha, .register form .captcha {
  display: flex;
}

.login form .fb-btn, .login form .gl-btn, .register form .fb-btn, .register form .gl-btn {
  display: flex;
  text-decoration: none;
  position: relative;
  border-radius: 4px;
  text-align: center;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 500;
  font-size: 14px;
  width: 92%;
  margin: 15px 0 5px 0;
  padding: 15px;
  transition: background-color 0.2s;
}

.login form .fb-btn i, .login form .gl-btn i, .register form .fb-btn i, .register form .gl-btn i {
  position: absolute;
  left: 15px;
}

.login form .fb-btn:hover, .login form .gl-btn:hover, .register form .fb-btn:hover, .register form .gl-btn:hover {
  color: #fff;
  transition: background-color 0.2s;
}

.login form .fb-btn, .register form .fb-btn {
  background-color: #507CBF;
}

.login form .fb-btn:hover, .register form .fb-btn:hover {
  background-color: #426fb4;
}

.login form .gl-btn, .register form .gl-btn {
  background-color: #d6523e;
}

.login form .gl-btn:hover, .register form .gl-btn:hover {
  background-color: #cf412c;
}

.login form > a, .register form > a {
  text-decoration: none;
  color: #5b6574;
  width: 100%;
  padding: 5px 20px;
  font-weight: 700;
  font-size: 15px;
  display: inline-block;
  background-color: #f0f0f0; 
  border: 1px solid #ccc; 
  text-align: center;
}

.login form > a:hover, .register form > a:hover {
  color: #394049;
}

/* Login Page Ends */


  .header {
    max-height: 68px;
    min-height: 68px;
    background: #515964;
    padding: 5px;
    display: flex;
  }


#tekst-links {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  vertical-align: middle;
  color: #ffffff;
  height: 32px;
  width: 90px;
  font-family: 'Kanit';
  font-size: 27px;
  font-weight: 400;
  letter-spacing: 0.04em;
  position: relative;
  bottom: 24px;
  left: 10px;
}

#tekst-rechts {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  vertical-align: middle;
  text-align: center;
  color: #2a2a2a;
  background-color: #ffcc03;
  height: 31px;
  width: 128px;
  font-family: 'Kanit';
  font-size: 27px;
  font-weight: 700;
  letter-spacing: 0.02em;
  position: relative;
  bottom: 24px;
  left: 10px;
}

.menu {
  display: flex;
  justify-content: center;
  text-decoration: none;
  text-transform: none;
  font-size: 1.4rem;
  font-weight: 500;
  margin: 0px;
  padding: 0;
  border-bottom: 1px solid #30363d;
  background: #161b22;
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.3);
}

.menu-toggle svg {
    fill: white; 
}

.nav {
  display: grid;
  background: #161b22;
  grid-template-columns: repeat(3, 154px);
  list-style: none;
  padding: 0;
  margin: 0px;
}

.menu li a {
  display: block;
  padding: 11px;
  text-decoration: none;
  color: #fff;
  transition: 0.4s ease-in-out;
}

nav.menu ul.nav li a:hover,
nav.menu ul.nav li a:focus {
  background-color: #28303c;
  color: #ffcc03;
}

.nav li {
  text-align: center;
  box-shadow: none;
  border-right: 1px solid #30363d;
}

.nav li:first-child {
  border-left: 1px solid #30363d;
}

.nav li:nth-child(2) {
  border-right: 1px solid #30363d;
}

.nav li:last-child {
  border-right: 1px solid #30363d;
}

.hero {
  display: grid;
  min-height: 287px;
  background: #ffcc03 url('header-leren-tekenen.jpg') no-repeat right;
  max-width: 1200px;
  border-radius: 9px;
  margin: 10px auto;
  padding: 0px 20px;
  width: calc(100% - 20px);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
}

.hero-content {
  display: flex;
  align-items: center; 
}

.hero-heading {
  color: #2e2e2e;
  font-family: 'Kanit', sans-serif;
  margin: 0 auto;
}

.hero-sub {
  margin: 0 auto;
  top: 30%;
}


.background-text {
  display: inline;
  background-color: rgba(255, 255, 255, 0.8);
  padding-left: 7px;
  padding-right: 7px;
  font-size: 29px;
  font-weight: 300;
  position: relative;
  top: 12px;
}

.background-text-index {
  display: inline;
  background-color: rgba(255, 255, 255, 0.8);
  padding-left: 7px;
  padding-right: 7px;
  font-size: 29px;
  font-weight: 300;
  position: relative;
  color: #594e4e;
  top: 34px;
}

.hero-text-sub {
  display: inline;
  background-color: rgba(255, 255, 255, 0.8);
  color: #2e2e2e;
  font-family: 'Roboto', sans-serif;
  font-size: 18px;
  font-weight: 400;
  padding: 7px;
  line-height: 2.2;
}

.hero-text-sub-index {
  display: inline;
  background-color: rgba(17, 22, 41, 0.5);
  color: #FFFFFF;
  font-family: 'Roboto', sans-serif;
  font-weight: 600;
  padding: 7px;
  line-height: 2.2;
}

.introductie-container {
  text-align: center;
}

.introductie-container-index {
  max-width: 1000px; 
  margin: 0px auto;
  padding-left: 20px; 
  padding-right: 20px;
  overflow: hidden;
}

.image-container-carlo {
    float: right; 
    margin-left: 10px; 
  }

.intro{
  color: #FFFFFF;
  font-family: 'Sans', sans-serif;
  font-weight: 200;
  font-size: 20px;
  text-align: left;
}

.blog-intro-container {
  padding-left: 30px;
  padding-right: 30px;
  margin: 0px auto;
}

.blog-titel {
  text-decoration: none;
  color: #FFFFFF;
  font-family: 'Kanit', sans-serif;
  font-weight: 400;
  font-size: 27px;
  margin-top: 30px;
}

.blog-intro {
  text-decoration: none;
  color: #FFFFFF;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 17px;	
}

.yellow-marker {
  background-color: #ffcc03;
  color: #000000;
  padding-left: 1px;
  padding-right: 4px;
  padding-bottom: 5px;
  padding-top: 0px;
  font-family: "Playball", cursive;
  font-weight: 700;
  font-size: 27px;
}


.titel-index {
  color: #FFFFFF;
  font-family: 'Kanit', sans-serif;
  font-weight: 200;
  font-size: 25px;
}

.titel-over {
  color: #000000;
  font-family: 'Kanit', sans-serif;
  font-weight: 200;
  font-size: 22px;
  margin-top: 50px;
}

.titel-over-verhaal {
  color: #000000;
  font-family: 'Kanit', sans-serif;
  font-weight: 200;
  font-size: 22px;
}

.faq-container-add-post {
  max-width: 1000px; 
  margin: 0px auto;
  padding-left: 20px; 
  padding-right: 20px;
  overflow: hidden;
}

.faq-container-index {
  max-width: 1000px; 
  margin: 0px auto;
  padding-left: 20px; 
  padding-right: 20px;
  overflow: hidden;
}

.faq-titel{
  color: #000000;
  font-family: 'Kanit', sans-serif;
  font-weight: 200;
  font-size: 20px;
  text-align: center;
}

.faq-sub-titel{
  color: #000000;
  font-family: 'Sans', sans-serif;
  font-weight: 200;
  font-size: 16px;
  text-align: center;
}

.faq-antwoord{
  color: #000000;
  font-family: 'Sans', sans-serif;
  font-weight: 200; 
  font-size: 16px;
  text-align: left;
}

.faq-button {
  background-color: #facc18;
  border-radius: 4px;
  color: #3e434b;
  border: 2px solid #fff;
  padding: 10px 25px;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: block;
  margin: 0 auto;
}

.faq-button-2 {
  background-color: #facc18;
  border-radius: 4px;
  color: #3e434b;
  border: 2px solid #fff;
  padding: 10px 25px;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: block;
  margin: 0 auto;
  margin-bottom: 20px;
}

.faq-button-blog {
  background-color: #facc18;
  padding-left: 7px;
  padding-right: 7px;
  color: #000000;
  font-family: 'Kanit', sans-serif;
  font-size: 23px;
  font-weight: 300;
  cursor: pointer;
  margin: 0 auto;
  top: 34px;
}

.button-blog-center {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
}


.faq-container-index table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

.clear {
  clear: both; /* Clear floats */
}

.faq-container-index th,
.faq-container-index td {
  padding: 15px;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

.faq-container-index th {
  background-color: #facc18; 
  color: black;
  text-align: center;
}

.faq-container-index tr:nth-child(even) td {
  background-color: #f3f3f3; 
}

.faq-container-index tr:nth-child(odd) td {
  background-color: white; 
}


.disclaimer {
  display: inline;
  background-color: rgba(255, 255, 255, 0.8);
  color: #2e2e2e;
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  font-weight: 400;
  padding: 7px;
  line-height: 2.6;
  width: calc(100% - 200px);
  max-width: 1200px;
  border: 1px solid #7f8ba5;
}

.plaatje {
  margin: 0px auto;
  padding: 0px 0px;
  width: calc(100% - 0px);
  max-width: 1200px;
}

.button-login {
  background: #8995a6;
  background-size: 18%; 
  background-position: 7px;
  border-radius: 4px;
  border: 2px solid #fff;
  color: #fff;
  padding: 10px 15px;
  position: relative;
  bottom: -9px;
  margin-left: 25px;
  max-width: 1200px;
  float: right;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

.button-login:hover {
  border-color: #ffffff;
  color: #FFFFFF;
  background-color: #d13d00;
}

.button-inschrijven {
  background-color: #facc18;
  border-radius: 4px;
  color: #3e434b;
  border: 2px solid #fff;
  padding: 10px 25px;
  position: relative;
  bottom: -9px;
  margin-left: 12px;
  margin-right: 13px;
  max-width: 1200px;
  float: right;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: none;
  outline: none;
  transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
}

.button-inschrijven:hover {
  background-color: #5ccb2f;
  color: rgb(255, 255, 255);
}

#container {
  max-width: 1200px;
  margin: 0 auto;
}

.progress-bar {
  background-color: #ffffff12;
  height: 16px;
  /* margin: 10px auto; */
  /* width: 100%; */
  margin-left: 10px;
  width: calc(100% - 20px); 
  border-radius: 12px;
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.3);
  position: relative;
  z-index: 1;
}

.fill {
  background-image: linear-gradient(to right, #1f8113, #5ccb2f);
  height: 100%;
  width: 0%;
  transition: width 8s cubic-bezier(0, 0.01, 0.15, 1);
  border-radius: 12px;
  max-width: 100%;
  width: 0%;
  background-size: 100% 100%; 
  position: relative;
}

.fill.filled {
  width: 100%;
  margin: 10px auto;
  max-width: 50%;
}

.progress-bubble {
  background-image: url('bubble.png');
  height: 29px;
  width: 34px;
  position: absolute;
  right: 0;
  top: -25px;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.progress-bubble-align-left {
    left: 1px;
}

.progress-text {
  font-size: 11px;
  font-weight: 600;
  margin-bottom: 6px;
}

.content {
  background: #515964;
  background-image: linear-gradient(to top, #28303c, #515964);
  border: 1px solid #788492;
  min-height: 336px;
  max-width: 1200px;
  margin: 10px auto;
  /* padding: 0px 20px; */
  border-radius: 9px;
  width: calc(100% - 20px);
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
  animation: ContentAnimation 6s infinite;
}

@keyframes ContentAnimation {
  0% {
    box-shadow: 0px 0px 15px #c5695b;
  }
  25% {
    box-shadow: 0px 0px 15px #6a82ab;
  }
  50% {
    box-shadow: 0px 0px 15px #58b368;
  }
  75% {
    box-shadow: 0px 0px 15px #d88e5a;
  }
  100% {
    box-shadow: 0px 0px 15px #c5695b;
  }
}

/* Exclude animation for index page */
body.index-page .content {
  animation: none;
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
}

.content-bottom {
  background: #ffffff;
  min-height: 300px;
  max-width: 1200px;
  padding: 0 !important;
  margin-top: 40px;
  border-radius: 9px;
  width: calc(100% - 0px);
}

.content-bottom-blog {
  background: #FFFFFF;
  min-height: 300px;
  max-width: 1200px;
  padding-top: 10px;
  padding-bottom: 40px;
  border-radius: 9px;
  width: calc(100% - 0px);
}

.content-profile-page {
  min-height: 300px;
  max-width: 1200px;
  padding: 0px;
  border-radius: 9px;
  width: calc(100% - 0px);
  color: #FFFFFF;
  font-family: 'Open Sans';
  font-size: 17px;
  font-weight: 400;
  text-align: center;
}

.content-over {
  background: #FFFFFF;
  border: 1px solid #788492;
  min-height: 336px;
  max-width: 1200px;
  margin: 10px auto;
  /* padding: 0px 20px; */
  border-radius: 9px;
  width: calc(100% - 20px);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
}


.profile-btn {
  display: inline-block;
  text-decoration: none;
  border: 0;
  cursor: pointer;
  color: #fff;
  background-color: #3274d6;
  margin: 20px 5px 0 0;
  padding: 10px 15px;
  border-radius: 4px;
  appearance: none;
  font-size: 14px;
  font-weight: 500;
}

.block { 
  display: flex;
  flex-direction: column;
  align-items: center; 
  justify-content: left;
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
  padding: 25px;
  background-color: #fff;
  color: #000000;
  border-radius: 9px;
}


.block form {
  display: flex;
  flex-wrap: wrap;
}

.form-group {
  flex: 1 1 100%; /* Allow each form group to take full width initially */
  margin-right: 10px; /* Add some space between form groups */
}

@media screen and (min-width: 500px) {
  .form-group {
    flex-basis: calc(50% - 5px); /* Set width to 50% minus half of the margin */
  }
}

label {
  display: block; /* Labels appear on a new line */
}

label, input {
  margin-bottom: 10px; /* Add spacing between labels and inputs */
}

/* Optional: Add spacing between form elements */
.block form label,
.block form input,
.block form div {
  margin-bottom: 10px; 
}


.block form label {
  font-weight: bold;
  text-align: left;
  
}

.block form input {
  padding: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 100%;
}


.block form input[type="text"],
.block form input[type="password"],
.block form input[type="email"] {
  font-size: 16px; 
}


.block form .profile-btn {
  background-color: #007bff;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
}


.block form p {
  color: red; 
}

.grid-container {
  justify-content: center;
  align-items: center;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(174px, 174px));
  grid-gap: 13px;
  margin-bottom: 15px;
  margin-top: 30px;
} 

.grid-item {
  display: grid;
  grid-template-rows: auto;
  gap: 25px;
}

.element {
  width: 174px;
  height: 174px;
  background-color: #ccc;
}

.label-box {
  background-color: #f2f2f200;
  padding: 5px;
  text-align: center;
}

.text {
  font-size: 16px;
  font-weight: 500;
}


.grid-item:nth-child(1) .element-1 {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: #161b22;
  background: linear-gradient(to top, #160d0d1a, #161b22);
  height: 228px;
  width: 174px;
  border-radius: 6px;
  transition: all 0.3s;
  transform-origin: center;
  position: relative;
  cursor: pointer;
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
}


.grid-item:nth-child(1) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}


.grid-item:nth-child(2) .element {
  background: url(objecten-tekenen.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  transition: all 0.3s;
  cursor: pointer;
}


.grid-item:nth-child(2) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}


.grid-item:nth-child(3) .element {
  background: url(schaduw-en-kleur.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  transition: all 0.3s;
  cursor: pointer;
}



.grid-item:nth-child(3) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}


.grid-item:nth-child(4) .element {
  background: url(menselijk-lichaam.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  transition: all 0.3s;
  cursor: pointer;
}

.grid-item:nth-child(4) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}

/* Hover for 2, 3, 4 grid cards */
.element:hover {
  border-color: #000000;
  color: #3e434b;
  background-color: #ffffff;
  transform: scale(1.06, 1.06);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 1.0); 
}

/* Hover nr 1 grid card */
.grid-item:nth-child(1) .element-1:hover {
  border-color: #fd0101;
  background-color: #203222;
  transform: scale(1.06, 1.06);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 1.0); 
}


/* Styling for the cards */

.card-image {
  background-image: url('play.jpg');
  background-size: cover;
  background-position: center;
  height: 101px;
  width: 152px;
  border-radius: 5px;
  position: absolute; 
  top: 12px; 
  left: 50%;
  transform: translateX(-50%);
}

.card-img-niveau {
  background: url('beginner-icon.png'); 
  background-repeat: no-repeat;
  background-size: contain;
  height: 15px;
  width: 46px;
  margin: 0 auto;
  margin-bottom: 7px;
}

.card-img-niveau-2 {
  background: url('intermediate-icon.png'); 
  background-repeat: no-repeat;
  background-size: contain;
  height: 15px;
  width: 46px;
  margin: 69px 0 6px 0;
}

.button-text-niveau-2 {
  font-family: 'Open Sans';
  font-size: 11px;
  font-weight: 600;
  color: #FFFFFF;
}

.card-img-niveau-4 {
  background: url('advanced-icon.png'); 
  background-repeat: no-repeat;
  background-size: contain;
  height: 15px;
  width: 46px;
  margin: 69px 0 6px 0;
}

.button-text-niveau {
  font-family: 'Open Sans';
  font-size: 11px;
  font-weight: 600;
  color: #FFFFFF;
  margin: 0 auto;
  margin-bottom: 12px;
}


.card-active:hover {
  border-color: #000000;
  color: #3e434b;
  background-color: #202732;
  transform: scale(1.06, 1.06);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 1.0); 
}


.card-button {
  background: #4dca1c url('check.png') no-repeat left center; 
  height: 48px;
  width: 174px;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  background-position: 22px center;
  cursor: pointer;
}

.button-text {
  position: absolute;
  left: 42px;
  top: 90%;
  transform: translateY(-52%);
  padding: 10px;
  color: white;
  font-family: 'Open Sans';
  font-size: 16px;
  font-weight: 600;
}

/* Styling ends here for the cards */


/* Styling Begins here for the index cards */

.grid-item:nth-child(1) .element-index {
  background: url(gezichten-tekenen.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  box-shadow: 0 5px 10px 5px rgb(0 0 0 / 30%); 
}

.grid-item:nth-child(1) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}

.grid-item:nth-child(2) .element-index {
  background: url(landschap-gebouwen.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  box-shadow: 0 5px 10px 5px rgb(0 0 0 / 30%);
}

.grid-item:nth-child(2) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}

.grid-item:nth-child(3) .element-index {
  background: url(paard-kroko.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  box-shadow: 0 5px 10px 5px rgb(0 0 0 / 30%);
}


.grid-item:nth-child(3) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}


.grid-item:nth-child(4) .element-index {
  background: url(licht-schaduw.jpg);
  height: 218px;
  width: 174px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  box-shadow: 0 5px 10px 5px rgb(0 0 0 / 30%);
}


.grid-item:nth-child(4) .text {
  height: 25px;
  color: #d3dce7;
  font-family: 'Cabin', sans-serif;
}

.video-container-index {
  max-width: 100%;
  margin-top: auto;
  margin-right: 25px;
  margin-left: 25px;
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  background-color: #000000;
}

.outer-container {
  background-color: black; 
  margin-top: auto;
}

.outer-container-blog {
  background-color: black; 
  margin-top: auto;
  border-radius: 0 0 8px 8px;
  
}

.inner-container {
  max-width: 100%;
  margin: auto;
}


@keyframes pulse {
  0%, 100% {
    box-shadow: 0 0 10px 5px rgba(29, 175, 237, 0.5);
  }
  50% {
    box-shadow: 0 0 30px 8px rgba(29, 175, 237, 0.7);
  }
}

.video-player-index {
  height: auto;
  max-width: 100%;
  background-color: #000000;
  border-radius: 9px;
  border: 1px solid #1dafed;
  box-shadow: 0 0 10px 5px rgba(29, 175, 237, 0.2);
  overflow: hidden; /* Optional: hide overflowing content */
  animation: pulse 2s infinite; 
  transition: box-shadow 3s ease-in-out;
}

.video-player-index img {
  max-width: 100%;
  height: auto;
  display: block; /* Remove default inline image spacing */
  margin: 0 auto; 
  cursor: pointer;
}



/* Styling begins here for the videos */


.container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(299px, 300px));
  grid-gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 1000px; 
  margin: 0px auto;
  padding: 40px;
}

.card {
  width: 299px;
  height: 320px;
  margin-bottom: 21px; 
  border-radius: 10px;
}


.image-container {
  margin-top: 10px;
  height: 49%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.image-container img {
  max-width: 100%;
  max-height: 100%;
}

.image-container-faq {
  max-width: 100%;
  height: auto;
}

.responsive-image {
  max-width: 100%;
  height: auto;
  display: block; /* Removes extra space below inline images in some browsers */
}

.image-3D {
  max-width: 150px;
  max-height: 150px;
  height: auto;
  display: block; /* Removes extra space below inline images in some browsers */
}

.text-container {
  padding: 10px;
  box-sizing: border-box;
  text-align: left;
}

.img-container {
  vertical-align: middle; 
  margin-right: 8px;
}

.subject {
  font-size: 14px;
  color: #333; 
  margin: 0 0 6px 0;
  text-decoration: underline;
  text-underline-offset: 4px;
  display: inline-block; /* Ensures the text stays in line with the image */
  vertical-align: middle; /* Aligns the text vertically */
}

.title {
  font-size: 15px;
  color: #333; 
  margin: 0 0 6px 0;
  text-align: left;
}

.description {
  font-size: 13px;
  color: #666; 
  margin: 0;
}

.icon-container img {
  margin-right: 10px;
}

.title:hover {
  color: #0062ff;
  cursor: pointer;
}
.subject:hover {
  color: #0062ff;
  cursor: pointer;
}

.progress-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;	
  padding:8px;
  margin: 8px auto; 
  width: 279px;
  border: 1px solid #ff8100; 
  background-color: #FFFFFF;
  color: #ff8100;
  border-radius: 4px;
  text-align: center;
  text-decoration: none;
  font-family: 'Open Sans';
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

.progress-button:hover {
  background-color: #ff8100; 
  color: white;
}

.progress-button {
  transition-duration: 0.4s;						
}

.progress-button:disabled {
    background-color: #cccccc;
    cursor: not-allowed;
    color: #888888;
    border: 1px solid #888888; 
    display: none;
}

.progress-button.completed {
  background-color: #cccccc; 
  cursor: not-allowed; 
  color: #888888; 
  border: 1px solid #5ccb2f; 
  display: block;
}

.progress-button:disabled:hover {
  background-color: #cccccc; 
  color: #888888; 
  cursor: not-allowed; 
}

.footer {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  min-height: 207px;
  border-radius: 9px;
  background: #171b22;
  border: 1px solid #30363d;
  max-width: 1180px;
  margin: 10px auto;
  width: calc(100% - 20px);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
}

.container-logo {
  display: grid;
  justify-content: end;
  margin-left: 15px;
}

.logo-footer {
  color: #FFFFFF;
  font-size: 15px;
  font-weight: bold;
	
}

.container-divider {
  display: grid;
  justify-content: center;
  align-items: center;
}

.divider {
  border-left: 4px solid #ffcc03;
  border-radius: 4px;
  height: 160px
}


.link-list {
  display: grid;
  grid-template-columns: 1fr;
  font-family: 'Open Sans', sans-serif;
  list-style: none;
  padding: 0;
  margin-right: 20px;
  font-size: 13px;
  color: #333; 
}

.link-list li {
  margin-bottom: 6px; 
}

.link-list a {
  text-decoration: none;
  color: #fff; 
}


@media (max-width: 529px) {
  .nav {
    display: none; /* Hides the grid layout on smaller screens */
  }
  
  .menu {
    position: relative;
  }

  .menu-list {
    display: none; /* Initially hide the dropdown menu */
    position: absolute;
    top: 100%; /* Position it below the menu button */
    left: 0;
    background: #161b22;
    width: 100%;
	z-index: 3;
  }

  .menu-list.active {
    display: block; /* Show the dropdown menu when it has the "active" class */
  }

  .menu-list li {
    display: block;
    text-align: center;
    padding: 10px;
    border-bottom: 1px solid #fff; 
  }

  .menu-toggle {
    display: block;
    background: #161b22;
	height: 42px;
	border: 0px;
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
    color: #fff;
    text-align: center;
    padding: 10px;
    cursor: pointer;
  }

 /* Style for the list of additional links within the active toggle menu */
  .menu-list.active .additional-links ul {
    list-style: none;
    padding: 0;
  }

  .menu-list.active .additional-links ul li a {
    display: block;
    color: #fff;
    padding: 5px;
  }
}

/* For screens wider than 600px */
@media (min-width: 529px) {
   .profiel-link,
   .uitlog-link {
    display: none; /* Hide the link */
  }
}

  .uitlog-link {
  background: #d93f01;
}

/* For screens up to 600px */
@media (max-width: 529px) {
  .button-inschrijven,
  .button-login {
    display: none; /* Display the links */
  }
}

  .hero {
  display: grid;
  min-height: 287px;
  background: #ffcc03 url('header-leren-tekenen.jpg') no-repeat right;
  max-width: 1200px;
  border-radius: 9px;
  margin: 10px auto;
  padding: 0px 20px;
  width: calc(100% - 20px);
  box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.4);
  position: relative;
  z-index: 1;
}

  .button-login {
  background: #8995a6;
  background-size: 18%; 
  background-position: 7px;
  border-radius: 4px;
  border: 2px solid #fff;
  color: #fff;
  padding: 10px 5px;
  position: relative;
  bottom: -9px;
  margin-left: 25px;
  max-width: 1200px;
  float: right;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

  .button-login:hover {
  border-color: #ffffff;
  color: #FFFFFF;
  background-color: #d13d00;
}

  .button-inschrijven {
  background-color: #facc18;
  border-radius: 4px;
  color: #3e434b;
  border: 2px solid #fff;
  padding: 10px 9px;
  position: relative;
  bottom: -9px;
  max-width: 1200px;
  font-family: 'Open Sans';
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: none;
  outline: none;
  transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out; 
}

  .button-inschrijven:hover {
  background-color: #5ccb2f;
  color: rgb(255, 255, 255);
}

  
.plaatje {
  padding: 0;
  width: calc(100% - 0px);
  max-width: 1200px;
  text-align: center;
}

.logo-container {
  display: flex;
  align-items: center;
  text-align: left; 
}

.logo-container img {
  margin-right: 10px; 
}

.text-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
}


/* MOBILE PHONES BELOW 530px */

@media (min-width: 530px) {
  .menu-toggle {
    display: none; /* Hide the menu button on larger screens */
  }
}

@media (min-width: 530px) {
	.plaatje  {
      text-align: left;
  }  
}

@media (min-width: 530px) {
  .menu-toggle {
    display: none; /* Hide the menu button on larger screens */
  }
}

/* For screens up to 529px */
@media (max-width: 529px) {
  .button-inschrijven,
  .button-login {
    display: none;
  }

  .plaatje {
    justify-content: center;
    align-items: center;
  }

  .logo-container {
    flex-direction: column; /* Stack image and text vertically */
    text-align: center; 
  }

  .logo-container img {
    margin: 0 auto 10px; 
  }
}

/* For screens up to 345px */
@media (max-width: 450px) {
  .oog {
    display: none; /* Hide the logo image */
  }
}

@media (max-width: 450px) {
  #tekst-links,
  #tekst-rechts {
    left: -5px; /* New left value for smaller screens */
    bottom: -13px; /* New bottom value for smaller screens */
  }
}

  .background-text {
  font-size: calc(21px + (29 - 21) * ((100vw - 475px) / (523 - 475)));
  font-size: min(29px, calc(21px + (29 - 21) * ((100vw - 475px) / (523 - 475))));
}

@media (max-width: 475px) {
  .background-text {
    font-size: 21px; /* Stops the font size calculation at 21px when viewport width is less than 475px */
  }
}

  .background-text-index {
  font-size: calc(21px + (29 - 21) * ((100vw - 475px) / (523 - 475)));
  font-size: min(29px, calc(21px + (29 - 21) * ((100vw - 475px) / (523 - 475))));
}

@media (max-width: 475px) {
  .background-text-index {
    font-size: 21px; /* Stops the font size calculation at 21px when viewport width is less than 475px */
  }
}

.hero-text-sub {
  font-size: calc(14px + (18 - 14) * ((100vw - 475px) / (523 - 475)));
  font-size: min(18px, calc(14px + (18 - 14) * ((100vw - 475px) / (523 - 475))));
}

@media (max-width: 475px) {
  .hero-text-sub {
    font-size: 14px; /* Stops the font size calculation at 14px when viewport width is less than 475px */
  }
}

.hero-text-sub-index {
  font-size: calc(14px + (18 - 14) * ((100vw - 475px) / (523 - 475)));
  font-size: min(18px, calc(14px + (18 - 14) * ((100vw - 475px) / (523 - 475))));
}

@media (max-width: 475px) {
  .hero-text-sub-index {
    font-size: 14px; /* Stops the font size calculation at 14px when viewport width is less than 475px */
  }
}

@media (min-width: 522px) {
  .hero-text-sub-index {
    font-weight: 400; /* Change font weight to 400 at a minimum width of 475px */
	line-height: 2.0;
  }
}


.disclaimer {
  font-size: calc(12px + (13 - 12) * ((100vw - 475px) / (523 - 475)));
  font-size: min(13px, calc(12px + (13 - 12) * ((100vw - 475px) / (523 - 475))));
}

@media (max-width: 475px) {
  .disclaimer {
    font-size: 12px; /* Stops the font size calculation at 12px when viewport width is less than 475px */
  }
}

@media (min-width: 597px) {
  .background-text {
    top: 47px; 
  }
}

@media (min-width: 975px) {
  .background-text {
    top: 58px;
  }
}

@media (min-width: 858px) {
  .background-text-index {
    top: 85px; 
  }
}

@media (min-width: 1141px) {
  .background-text-index {
    top: 103px;
  }
}

@media (min-width: 975px) {
  .rectangle {
    margin: 0 auto;
  }
}
