
* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

body {
   display: flex;
   flex-direction: column;
   min-height: 100vh;
   font-family: Arial, sans-serif;
}

.material-symbols-outlined {
   vertical-align: middle;
   margin-top: -5px;
}
.logo_placeholder {
   width: 100%;
   max-width: 800px;
   flex: 1;
   text-align: center;
   margin-bottom:10px;
}

.logo_placeholder .logo {
      text-align: center;
      width: 300px;
      max-width: 800px;
   }
.content {
   background-color: var(--content-background-color);
   padding: 20px; /* Voeg ruimte toe binnen de div */
   margin: 10px;
   border-radius: 10px; /* Maak de hoeken afgerond */
   color: var(--content-text-color);
   box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Zachte schaduw voor een mooi effect */
   margin-top: 0px; /* Voeg ruimte buiten de div toe */
   flex: 1;
}

/* Content-secties */
.section {
   display: none; /* Verborgen totdat zichtbaar */
   padding: 10px 20px;
   max-width: 800px;
   margin: 0 auto;
   color: var(--content-text-color);
   opacity: 0;
   transform: translateY(20px);
   transition: opacity 0.5s ease, transform 0.5s ease;
}

   .section.active {
      display: block;
      opacity: 1;
      transform: translateY(0);
   }

   .section a {
      color: var(--content-title-color);
   }

   .section h1 {
      font-size: 28px;
      margin-bottom: 20px;
      color: var(--content-title-color);
   }

   .section h2 {
      font-size: 22px;
      line-height: 32px;
      height: 32px;
      vertical-align: middle;
      margin-bottom: 0px;
      color: var(--content-title2-color);
      display: flex;
      align-items: center; /* Centreert verticaal */
   }

   .section h3 {
      font-family: "Dancing Script", serif;
      color: var(--content-title2-color);
      font-size: 26px;
      text-align: center;
   }

/* Styling voor de lijst */
.service-list {
   list-style-type: none; /* Verwijdert standaard lijstpunten */
   padding: 0;
   margin: 0;
}

/* Styling voor elk item in de lijst */
.service-item {
   margin-bottom: 20px;
}

.section p {
   margin-top: 0px;
   margin-bottom: 10px;
   font-size: 16px;
   line-height: 1.6;
}

/* Navigatiebalk */
.navbar {
   display: flex;
   align-items: center;
   background-color: var(--navbar-back-color);
   color: var( --navbar-text-hover-color);
   padding: 10px 20px;
   position: sticky;
   top: 0px;
   z-index: 1000;
   opacity: 0;
   transform: translateY(-20px);
   animation: fadeIn 0.5s ease-out forwards;
}

   /* Logo */
   .navbar .logo {
      width: 151px;
      height: 45px;
      background-image: var(--logo-beeldmerk-img);
      background-size: contain; /* Zorgt dat de afbeelding in het vak past */
      background-repeat: no-repeat; /* Voorkomt herhaling */
      background-position: center; /* Centreert de afbeelding */
      display: flex;
      align-items: center;
      margin-right: 20px;
   }


   /* Links in de navigatiebalk */
   .navbar a {
      color: var(--navbar-text-color);
      text-decoration: none;
      margin: 0 10px;
      font-size: 16px;
      position: relative;
      transition: color 0.3s ease;
   }

      .navbar a:hover {
         color: var(--navbar-texthover-color);
      }

      .navbar a::after {
         content: "";
         position: absolute;
         bottom: -5px;
         left: 50%;
         width: 0;
         height: 3px;
         background-color: var(--navbar-text-line-color);
         transition: all 0.3s ease;
         transform: translateX(-50%);
      }

      .navbar a:hover::after {
         width: 100%;
      }

   .navbar .selected {
      color: var(--navbar-selectedtext-color);
   }

.menu {
   display: flex;
   align-items: center;
}

.navbar {
   gap: 10px;
}

/* Mobiele menu-styling */
.hamburger {
   display: none;
   font-size: 24px;
   cursor: pointer;
   margin-left: auto;
   transition: transform 0.3s ease;
}

   .hamburger:hover {
      transform: rotate(90deg);
   }

.mobile-menu {
   display: none;
   flex-direction: column;
   background-color: var(--navbar-back-color);
   position: absolute;
   top: 100%;
   left: 0;
   width: 100%;
   padding: 10px 0;
   z-index: 1000;
   opacity: 0;
   transform: translateY(-20px);
   transition: all 0.3s ease-in-out;
}

   .mobile-menu.active {
      display: flex;
      opacity: 1;
      transform: translateY(0);
   }

   .mobile-menu a {
      padding: 10px 20px;
      text-align: center;
      color: var(--navbar-text-color);
      text-decoration: none;
      font-size: 16px;
      opacity: 0;
      transform: translateY(-10px);
      animation: slideIn 0.3s ease-out forwards;
   }




.carousel {
   position: relative;
   /*width: 50%;*/
   max-width: 850px;
   margin: 10px auto;
   overflow: hidden;
   border-radius: 10px;
   box-shadow: 0 4px 8px rgba(0,0,0,0.2);
   background-color: grey;
}

.carousel-inner {
   display: flex;
   transition: transform 0.5s ease-in-out;
}

.carousel-item {
   min-width: 100%;
   position: relative;
}

.carousel img {
   width: 100%;
   height: 400px;
   /*   object-fit: cover; */
   object-fit: contain;
   border-radius: 10px;
}

.carousel .caption {
   position: absolute;
   bottom: 30px;
   width: 100%;
   background: var(--carousel-caption-back-color);
   color: var(--carousel-caption-color);
   text-align: center;
   padding: 5px;
   font-size: 16px;
}

.carousel .prev, .carousel .next {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   background: var(--carousel-button-back-color);
   color: var(--carousel-button-color);
   border: none;
   padding: 10px;
   cursor: pointer;
   border-radius: 5px;
   font-size: 18px;
}

.carousel .prev {
   left: 10px;
}

.carousel .next {
   right: 10px;
}

.carousel .dots {
   position: absolute;
   bottom: 10px;
   left: 50%;
   transform: translateX(-50%);
   display: flex;
   gap: 5px;
}

   .carousel .dots .dot {
      height: 10px;
      width: 10px;
      background-color: var(--carousel-dot-color);
      border-radius: 50%;
      display: inline-block;
      cursor: pointer;
   }

      .carousel .dots .dot.activeslide {
         background-color: var(--carousel-dot-active-color);
      }

/* Fade effect for fade-type carousels */
.carousel[data-type="fade"] .carousel-inner {
   display: block;
   position: relative;
}

.carousel[data-type="fade"] .carousel-item {
   position: absolute;
   opacity: 0;
   transition: opacity 1s ease-in-out;
   width: 100%;
}

   .carousel[data-type="fade"] .carousel-item.active {
      opacity: 1;
      position: relative;
   }



.footer {
   background-color: var(--footer-back-color);
   color: var(--footer-text-color);
   text-align: center;
   padding: 15px;
   position: sticky;
   bottom: 0;
   width: 100%;
}

   .footer a {
      color: var(--footer-link-color);
      text-decoration: none;
   }

   .footer span {
      white-space: nowrap; /* Voorkomt wrapping */
   }

   .footer a:hover {
      text-decoration: none;
      color: var(--footer-link-hover-color);
   }


/* Voor verspringend opbouwen mobile menu */
.mobile-menu a:nth-child(1) {
   animation-delay: 0.1s;
}

.mobile-menu a:nth-child(2) {
   animation-delay: 0.2s;
}

.mobile-menu a:nth-child(3) {
   animation-delay: 0.3s;
}

.mobile-menu a:nth-child(4) {
   animation-delay: 0.4s;
}


/* Kleine schermen (mobiel) - responsive design */
@media (max-width: 768px) {

   .navbar .logo {
      width: 60px;
      height: 45px;
      background-image: var(--logo-beeldmerk-img);
      background-size: contain; /* Zorgt dat de afbeelding in het vak past */
      background-repeat: no-repeat; /* Voorkomt herhaling */
      background-position: center; /* Centreert de afbeelding */
      display: flex;
      
      margin-right: 0px;
   }


   .menu {
      display: none;
   }

   .hamburger {
      display: block;
   }

   .content {
      padding: 0px;
      margin: 5px 5px 50px 5px;
      font-size: 12px;
   }

   .section {
      padding: 5px 10px 10px 10px;
   }

      .section h1 {
         font-size: 24px;
         text-align: center
      }

   .service-item h2 {
      font-size: 16px;
   }

   .carousel img {
      width: 100%;
      height: 400px;
     
      object-fit: cover;
      border-radius: 10px;
   }

}

@media (min-width: 768px) {
   .mobile-menu.active {
      display: none;
      opacity: 1;
      transform: translateY(0);
   }
   .carousel{width:90%}
}



/* Standaardinstellingen voor de sprite */
.bs_icon {
   display: inline-block;
   background: url('../img/bs_icons.jpg') no-repeat;
}

/* Iconen op 32x32 formaat */
.bs_icon-32 {
   width: 32px;
   height: 32px;
}

   .bs_icon-32.kwast {
      background-position: 0 0;
   }

   .bs_icon-32.spuit {
      background-position: -32px 0;
   }

   .bs_icon-32.roller {
      background-position: -64px 0;
   }

   .bs_icon-32.spatel {
      background-position: -96px 0;
   }


   .bs_icon-32.behang {
      background-position: -128px 0;
   }

   .bs_icon-32.instagram {
      background-position: -160px 0;
   }

/* Iconen op 16x16 formaat */
.bs_icon-16 {
   width: 16px;
   height: 16px;
   background-size: 160px 16px; /* Schalen naar kleiner formaat */
}

   .bs_icon-16.kwast {
      background-position: 0 0;
   }

   .bs_icon-16.spuit {
      background-position: -16px 0;
   }

   .bs_icon-16.roller {
      background-position: -32px 0;
   }

   .bs_icon-16.spatel {
      background-position: -48px 0;
   }


   .bs_icon-16.behang {
      background-position: -64px 0;
   }

   .bs_icon-16.instagram {
      background-position: -80px 1px;
   }



/* Keyframes voor animaties */
@keyframes fadeIn {
   from {
      opacity: 0;
      transform: translateY(-20px);
   }

   to {
      opacity: 1;
      transform: translateY(0);
   }
}

@keyframes slideIn {
   from {
      opacity: 0;
      transform: translateY(-10px);
   }

   to {
      opacity: 1;
      transform: translateY(0);
   }
}
