#kb-button .btn {
    align-items: center;
    border-radius: 0.5rem;
    display: flex;
    height: 2.5rem;
    font-size: .875rem;
    align-items: center;
    overflow: visible;
    padding: 0;
    text-align: left;
    width: 10rem;
    background-color: var(--purple-100);
    display: none;
    font-weight: 400;
}

#kb-button .btn.detail {
    width: 8rem;
}

#kb-button .btn svg:nth-child(2) {
    display: none;
}

#kb-button .btn.active svg:nth-child(1) {
    display: none;
}

#kb-button .btn.active svg:nth-child(2) {
    display: block;
}

.kennisbank .kennisbank-hero {
    padding: 10rem 0;
    background-image: url(../images/kennisbank-hero.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.kennisbank .card.review .title {
    text-align: left;
}

.kennisbank .container {
    padding: 8rem 0;
}

.kennisbank.category .container {
    padding: 5.625rem 0 2rem;
    display: flex;
    gap: 8rem;
}

.kennisbank.category .container.faq {
    padding: 1rem 0;
    gap: 9rem;
}


.kennisbank.category .container.faq h2 {
    font-size: 2.5rem;
    line-height: 3.5rem;
}

.kennisbank .faq.overview {
    background-color: transparent;
    padding: 0 0 2rem !important;
    width: 100%;
}

.kennisbank .title {
    font-size: 4.5rem;
    font-weight: 800;
    margin-bottom: 3rem;
    color: var(--black);
    text-align: center;
}

.kennisbank .form-group-search-wrapper {
    margin: 0 auto 3rem;
}

.kennisbank .categories {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-gap: 3rem;
    max-width: 90rem;
    margin: 0 auto 3rem;
}

.kennisbank .categories:last-child {
    margin-bottom: 0;
}


/* category */
.kennisbank.category .content {
    width: 100%;
}

.kennisbank.category .card {
    padding: 3rem;
}

.kennisbank.category .card hr {
    border: none;
    border-bottom: 1px solid var(--gray-100);
}

.kennisbank.category .card table {
    border-collapse: collapse;
    width: 100%;
    border-bottom: none !important;
}

.kennisbank.category .card td,
.kennisbank.category .card table {
    border: 1px solid var(--gray-100);
    padding: .125rem .25rem;
}

.kennisbank.category .card .card {
    padding: 2rem;
    box-shadow: none;
    filter: none;
    border: 1px solid var(--gray-100);
}

.kennisbank.category .card .card:hover {
    border-bottom: none;
}

.kennisbank.category .card h1 {
    font-size: 2rem;
    line-height: 2rem;
    color: var(--black);
}

.kennisbank.category .card .intro {
    color: var(--gray-500);
    border-bottom: 1px solid var(--gray-100);
    padding: 1rem 0;
    margin-bottom: 1rem;
}

.kennisbank.category .card li {
    line-height: 2.5;
}

.kennisbank.category .card li a {
    color: var(--purple-400);
}

.kennisbank.category .card li a:hover {
    border-bottom: 1px dotted var(--purple-400);
}

.kennisbank.category .menu li {
    line-height: 2.2;
}

.kennisbank.category .menu li a {
    color: var(--gray-800);
    display: block;
}

.kennisbank.category .card:hover {
    box-shadow: none;
}

.kennisbank.category .menu li:hover a,
.kennisbank.category .menu li.active a {
    font-weight: 700;
    color: var(--gray-950);
    position: relative;
}

.kennisbank.category .menu li:hover a::after,
.kennisbank.category .menu li.active a::after {
    content: "";
    display: inline-block;
    width: 6px;
    margin-left: 2rem;
    height: 10px;
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L1 9' stroke='%231A1815' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.kennisbank.category .label {
    text-transform: uppercase;
    font-family: 'JetBrains Mono', monospace;
    font-weight: 500;
    font-size: 1rem;
    color: var(--purple-300);
    margin-bottom: 1rem;
}

.kennisbank .content {
    /* max-width: 49.25rem; */
}

.kennisbank .content h1 {
    margin-bottom: 2rem;
}

.kennisbank.category .content h1 {
    margin-bottom: 0;
}

.kennisbank.detail .content h1 {
    margin-bottom: 2rem;
}

.kennisbank.category .content p a {
    color: var(--purple-850);
    /* font-weight: 400; */
    border-bottom: 1px dotted var(--purple-400);
}

.kennisbank .menu.detail {
    width: 33rem;
    max-width: 33em;
}

.kennisbank .links.detail li {
    margin-bottom: 1rem;
}

.kennisbank .links.detail li a {
    line-height: 1.5;
}

.kennisbank .links.detail li:hover a {
    text-decoration: underline;
}

.kennisbank .content h3,
.kennisbank .content h2 {
    font-size: 1.5rem;
    line-height: 1.75;
    color: var(--gray-950);
    margin-bottom: .5rem;
    margin-top: 1rem;
}

.kennisbank .content p {
    font-size: 1rem;
    line-height: 1.5;
    color: var(--gray-800);
    margin-bottom: 1rem;
}

.kennisbank .content p strong {
    font-weight: 600;
    color: black;

}

.card.kennis_case .companyText li span,
.card.kennis_case .companyText li,
.card.kennis_case .companyText span,
.kennisbank .content li span,
.kennisbank .content li,
.kennisbank .content p span {
    font-weight: 200 !important;
}
.kennisbank .content p b {
    font-weight: bold !important;
}

.kennisbank .content .card ul {
    list-style-type: disc;
    margin-left: 1.5rem;
}

.kennisbank .content .card li {
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: .5rem;
}

.kennisbank .content .card li strong {
    font-weight: 700;
}

.kennisbank .content ol {
    margin-left: 1.5rem;
}

.kennisbank .content .photo {
    margin-bottom: 2rem;
    background-repeat: no-repeat;
    background-size: cover;
    height: 24rem;
    background-position: -9999px;
    text-align: center;
}

.kennisbank .content .photo img {
    width: auto;
    max-height: 20rem;
}

.kennisbank .row.back {
	font-size: 1rem;
	font-weight: 700;
    margin: 0 0 1rem;
}

.kennisbank .row.back svg {
	max-width: 1.5rem;
	width: auto;
	margin: 0;
    margin-right: 1rem;
	vertical-align: middle;
	height: auto;
}

.kennisbank .row.back a {
	color: var(--gray-950);
	display: block;
}


.kennisbank.detail ul li:hover svg path {
    fill: rgb(248, 207, 35);
}

.kennisbank.detail section.reviews {
    padding-top: 1rem;
    padding-bottom: 0;
}

.kennisbank_detail .content section.reviews p {
    font-weight: normal;
}

.kennisbank.detail section.reviews ul:not(.stars) {
    display: grid;
    grid-gap: 1rem;
    align-items: stretch;
    align-content: space-between;
    grid-template-columns: repeat(2,minmax(0,1fr));
    margin-left: 0;
}

.kennisbank.detail section.reviews ul.stars {
    margin-left: 0;
}

.kennisbank.detail section.reviews ul.stars li {
    margin-bottom: 0;
}

.kennisbank.detail section.reviews ul {
    list-style: none;
}

.kennisbank.detail .score {
    align-items: center;
    display: flex;
    font-weight: 700;
    justify-content: center;
    height: 3.375rem;
    width: 3.375rem;
    background-color: var(--purple-300);
    border-radius: 0.625rem;
    position: absolute;
    right: 1.5625rem;
    top: 1.5625rem;
    font-size: var(--body-fonts);
}

.kennisbank.detail ul li:hover svg path,
.kennisbank.detail ul li svg path {
    fill: var(--purple-300);
}
.kennisbank .content p[itemprop="reviewBody"] {
    margin-top: 1rem;
}
.kennisbank .content .card .reviews li strong {
    display: block;
}

.faq .faq-content h3 span {
  color: var(--gray-500);
}

.faq .faq-items h3 {
  font-size: 1.25rem;
  line-height: 1.5rem;
  font-weight: 500;
  color: var(--gray-950);
  padding: 1rem 2rem 0 0;
  cursor: pointer;
}

.faq .faq-question {
  border-bottom: 1px solid var(--gray-200);
  padding-bottom: 1rem;
  position: relative;
}

.faq .faq-items .faq-question .arrow {
  position: absolute;
  top: 1.5rem;
  right: 1rem;
  transform: translate(0, -25%);
}

.faq .faq-items .faq-question .arrow svg:nth-child(2) {
  display: none;
}

.faq .faq-items iframe {
  display: block;
  width: 100%;
}

.faq .faq-question .faq-b {
  height: 0;
  overflow: hidden;
}

.faq .faq-question .faq-b .faq-a {
  margin-top: 1rem;
}

.faq .faq-question .faq-b .faq-a p {
  line-height: 1.5;
  margin-bottom: 1rem;
  color: var(--gray-800);
}

.faq .faq-question .faq-b .faq-a p:last-child {
  margin-bottom: 0;
}

.faq .faq-question .faq-b .faq-a p strong {
  font-weight: 600;
}

.faq .faq-question.active .faq-b {
  height: 100%;
}

.faq .faq-b ul {
    list-style-type: disc;
    margin-left: 1.25rem;
    margin-bottom: 0;
}

.faq .faq-b ul br {
    display: none !important;
}

.faq .faq-b ul li {
    line-height: 1.5rem !important;
    font-weight: 200 !important;
}

.faq .faq-a span,
.faq .faq-b span,
.faq .faq-b ul p span,
.faq .faq-b ul li span {
    font-weight: 200 !important;
}


.card.kennis_case strong,
.card.kennis_case b,
.faq .faq-b strong,
.faq .faq-b b {
    font-weight: 600 !important;
}

.faq .line {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1.75rem;
}

.faq .faq-items .faq-question.active .arrow svg:nth-child(1) {
  display: none;
}

.faq .faq-items .faq-question.active .arrow svg:nth-child(2) {
  display: block;
}

.faq .faq-items .faq-question.active .arrow {
  top: 1.875rem;
}

.faq .line span {
  color: var(--purple-300);
}

.card.kennis_case {
    width: 100%;
}

.card.kennis_case h2 {
    font-size: 2.5rem;
    line-height: 2.75rem !important;
    margin-bottom: 2rem;
}

.card.kennis_case h3 {
    font-size: 1.5rem;
    line-height: 2rem;
    margin-bottom: 1rem;
    color: var(--purple-400);
}

.card.kennis_case .companyIntroText {
    margin-bottom: 1rem;
}

.card.kennis_case .companyIntroText ul {
    margin-left: 1rem;
}

.card.kennis_case .companyText {
    padding: 1rem;
}


.card.kennis_case .companyText a {
    color: var(--purple-300);
}

.card.kennis_case .companyText:nth-child(odd) {
    background-color: var(--gray-50);
}

.card.kennis_case .companyText:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

@media screen and (max-width: 1440px) {
    .kennisbank .categories {
        grid-gap: 2rem;
        margin-bottom: 2rem;
    }
}

@media screen and (max-width: 1024px) {
    .kennisbank .categories {
        grid-gap: 1rem;
        margin-bottom: 1rem;
    }
    .kennisbank .container {
        padding: 4rem 0;
    }
    .kennisbank h1 {
        font-size: 3.125rem;
    }
    .card.kennisbank p {
        margin: 0 0 2rem;
    }
    .kennisbank.category .container {
        gap: 4rem;
    }
    .kennisbank.category .menu {
        max-width: 14rem;
    }
    .kennisbank.category .form-group-search.round .form-control {
        width: auto;
        font-size: .875rem;
    }
    .kennisbank.category .form-group-search.round.small button {
        width: 2.75rem;
        max-width: 2.75rem;
    }
    .kennisbank.category .container.faq {
        gap: 4rem;
    }
    .kennisbank.category .container {
        padding: 4rem 0 2rem;
    }
    .kennisbank.category .menu.active {
        display: block;
    }
}

@media screen and (max-width: 768px) {
    .kennisbank .menu.detail {
        overflow: unset;
    }
    .kennisbank .links.detail li a {
        font-size: .875rem;
    }
    .kennisbank .categories {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .kennisbank.category {
        position: relative;
    }
    .kennisbank.category .container {
        gap: 2rem;
    }
    .kennisbank.category .menu {
        display: none;
    }
    #kb-button .btn {
        display: flex;
    }
    #kb-button .btn.active {
        background-color: var(--purple-400);
        color: var(--white);
    }
    #kb-button .btn.active svg path {
        fill: var(--white);
    }
    #kb-button {
        position: absolute;
        left: 2rem;
        top: 20.75rem;
    }
}

@media screen and (max-width: 550px) {
    .container {
        max-width: 24rem;
    }
    .kennisbank .case_wrapper {
        display: grid;
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .kennisbank .case_wrapper img {
        height: auto;
    }
    .kennisbank .content .photo img {
        max-height: 18rem;
    }
    .kennisbank.detail section.reviews ul:not(.stars) {
        grid-template-columns: 100%;
    }
    #kb-button {
        top: 8.75rem;
    }
    .kennisbank .container {
        padding: 3rem 0;
    }
    .kennisbank .categories {
        grid-template-columns: repeat(1,minmax(0,1fr));
    }
    .kennisbank .title {        
        margin-bottom: 2rem;
    }
    .kennisbank .form-group-search-wrapper {
        margin-bottom: 3rem;
    }
    .kennisbank .title h1 {
        font-size: 2.25rem;
    }
    .kennisbank .kennisbank-hero {
        height: 8rem;
        padding: 0;
    }
    .kennisbank.category .card {
        padding: 2rem 1.5rem;
    }
    .kennisbank.category .card li {
        line-height: 2;
    }
    .kennisbank.category .card h1 {
        margin-bottom: 1rem;
    }
    .kennisbank.category .card .intro {
        font-size: 1rem;
        line-height: 1.25;
        padding: 1rem 0;
    }
    .kennisbank .content p,
    .kennisbank.category .card li {
        font-size: 1rem;
        line-height: 1.5;
    }
    .kennisbank .content .photo {
        margin-bottom: 1rem;
        height: 18rem;
        background-size: contain;
        background-position: center center;
        border-radius: 0.25rem;
    }
    .kennisbank .content h3, .kennisbank .content h2 {
        line-height: 1.25;
    }
    .kennisbank .content .photo img {
        display: none !important;
    }
    .kennisbank .card.detail {
        padding: 1.5rem;
    }
    .kennisbank.category .container.faq h2 {
        font-size: 1.5rem;
        line-height: 1.25 !important;
    }
}

@media screen and (max-width: 375px) {
    
    .container {
        max-width: 20rem;
    }
    .kennisbank .faq.overview {
        padding: 0 1rem !important;
    }
}

@media screen and (max-width: 320px) {
    .kennisbank .title h1 {
        font-size: 1.75rem;
    }
    #kb-button {
        left: 1rem;
    }
    .kennisbank .content p,
    .kennisbank.category .card li {
        font-size: 1rem;
        line-height: 1;
    }
}