html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

html {
  scroll-behavior: auto !important;
}

body {
  overflow-x: hidden;
}

/* GPU acceleration for better performance */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Optimize images and heavy elements */
img, video, iframe {
  will-change: transform;
  transform: translateZ(0);
}

/* Fade transition */
html.is-animating .transition-fade {
    opacity: 0;
}

.transition-fade {
    transition: opacity 0.4s ease-in-out;
    opacity: 1;
}

/* Optional: add loading indicator */
html.is-animating::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #007bff 0%, #00d4ff 100%);
    z-index: 9999;
    animation: loading 1s ease-in-out;
}

@keyframes loading {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* Page Loader - smoother transitions */
#page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transition: opacity 0.4s ease;
}

#page-loader.fade-out {
    opacity: 0;
    pointer-events: none;
}

/* Spinner */
.spinner {
    width: 50px;
    height: 50px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #333;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Content transitions */
#page {
    opacity: 1;
    transition: opacity 0.3s ease;
}

#page.loaded {
    opacity: 1;
}

/* Smooth transition for main content */
#main {
    transition: opacity 0.3s ease;
}

/* Page Loader */
#page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transition: opacity 0.15s ease;
}

#page-loader.fade-out {
    opacity: 0;
    pointer-events: none;
}

/* Loader Image */
.loader-image {
    width: 180px; /* Adjust size */
    height: 80px;
    animation: pulse 1.5s ease-in-out infinite; /* Optional animation */
}

/* Optional: Pulse animation */
@keyframes pulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.7;
        transform: scale(1.1);
    }
}

/* Or spinning animation */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* If you want it to spin */
.loader-image.spin {
    animation: spin 1s linear infinite;
}

body {
    overflow-x: initial !important;
    overflow-y: initial !important;
}

.inner {
    max-width: 1836px;
}

.site {
    padding-top: 115px;
}
.site-header {
    height: auto;
    padding: 24px 0px;
}
.site-header.is-hidden {
    transform: initial !important;
}

.site-logo {
    height: 67px;
}

.mobile-menu-content {
    width: 100%;
    max-width: 100vw;
}
.mobile-nav-menu .current-menu-item > a {
    color: var(--text-color);
    font-weight: 400;
}
.mobile-nav-menu .current-menu-item > a::before {
    position: relative;
    top: initial;
    transform: initial;
}
.mobile-nav-menu > li > a, .mobile-nav-menu div > li > a{
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    padding: 24px 40px;
}
.mobile-nav-menu li {
    border-bottom: 1px solid #f2f2f2;
}
.mobile-nav-menu a:active {
    background: initial;
}
.mobile-nav-menu a:focus, .submenu-toggle:focus {
    outline: initial;
    outline-offset: initial;
}
button.submenu-toggle {
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue-1.svg) no-repeat;
    background-position: center center;
    top: 26px;
    right: 40px;
    padding: 0;
}
.mobile-nav-menu ul.sub-menu {
    background: var(--Grey---KBK, #F2F2F2);
    width: calc(100% - 48px);
    margin: 0 auto;
}
.mobile-nav-menu ul.sub-menu li a {
    font-family: 'Zurich BT';
    font-size: 16px;
    line-height: 140%;
    padding: 16px;
    padding-left: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.mobile-nav-menu ul.sub-menu li a:before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue-1.svg) no-repeat;
    background-position: center center;
}
.mobile-menu-toggle.is-active:before {
    content: 'Sluiten';
}
.mobile-menu-toggle.is-active .hamburger span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}

.menu-open header#masthead {
    border-bottom: 1px solid #F2F2F2;
}
.mobile-nav-menu {
    padding-top: 0;
}
.mobile-cta-buttons {
    padding: 24px;
    border-top: 0;
}
.mobile-nav-menu li:last-of-type {
    border-bottom: 0;
}
.mobile-cta-buttons li.sf-field-search:before {
    top: 50%;
    transform: translateY(-50%);
}

.mobile-cta-buttons li.sf-field-search input {
    height: 64px;
}
.mobile-menu-toggle.is-active .hamburger span:nth-child(1) {
    transform: translateY(5px) rotate(45deg);
}
.mobile-menu-toggle:before {
    content: 'Menu';
    color: white;
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
    font-family: 'Zurich BT';
}
.mobile-menu-toggle {
    width: 113px;
    height: 48px;
    background: var(--btn-primary-bg);
    gap: 8px;
    align-items: center;
}
.hamburger {
    width: 18px;
    height: 14px;
}
.hamburger span {
    background: white;
}
footer#contact:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/12/footer-bg.svg) no-repeat;
    z-index: 0;
    visibility: visible;
    background-position: 0% 0%;
}
footer#contact {
    position: relative;
}
footer#contact * {
    z-index: 2;
    position: relative;
}
.footer-above {
    background: #1A3360;
    margin: 0;
    padding-top: 72px;
    padding-bottom: 56px;
}
.footer-above h2, .dienst-content h4 {
    color: var(--White---KBK, #FFF);
    font-family: Merriweather;
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    padding-left: 32px;
    margin-bottom: 32px !important;
}
.footer-under .inner > .flexbox-wrapper > div a:hover {
    color: white;
}
.diensten-overzicht .title-element, .dienst-content h4, .contact-content-laag .title-element, .faq-laag .title-element {
    padding-left: 32px;
    position: relative;
}
.font-Donker .diensten-overzicht .dienst-content h4 {
    color: #002240;
}
.footer-above h2:before, .diensten-overzicht .title-element:before, .dienst-content h4:before, .contact-content-laag .content-box:not(.animatie) .title-element:before, .faq-laag .title-element:before, .vestigingen-laag .title-element:before, .cijfers-tekst-laag.afb-tekst-laag .content-box:not(.animatie) .title-element:before {
    content: '';
    display: block;
    width: 20px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 8px;
    top: 9px;
    background-size: contain;
    background-position: center center;
}
.faq-laag .content-box:not(.animatie) .title-element:before {
    width: 20px;
    height: 24px;
    top: 10px;
}
.content-box.animatie h2.title-element {
    font-family: 'Zurich BT';
    padding-left: 0;
}
.contact-content-laag .content-box:not(.animatie) .title-element:before {
    width: 20px;
    height: 24px;
    top: 6px;
    left: 0;
}
section.header-layer.with-video.with-image img.video-placeholder {
    height: 100%;
    object-fit: cover;
}
body.home section.header-layer.with-video.with-image img.video-placeholder {
    height: auto !important;
}
.image-box.two-images {
    z-index: 4;
    position: relative;
}
.diensten-overzicht .content-box:not(.animatie) .title-element:before {
    width: 20px;
    height: 24px;
    top: 5px;
}
.cijfers-tekst-laag.afb-tekst-laag .content-box:not(.animatie) .title-element:before {
    opacity: 1 !important;
    top: 5px;
    left: 0;
}
.cijfers-tekst-laag .content-box.without-image {
    flex-basis: 100%;
    width: 100%;
}

section.footer-above p {
    color: #FFF;
    font-family: "Zurich BT";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.footer-above .flexbox-wrapper.content-left-right {
    gap: 0;
    padding: 0;
    background-color: transparent;
    position: relative;
}
section.header-layer.with-image {
    border-bottom: 32px solid var(--Blue-Linear---KBK, #1A3360);
}

section.border-Blauw.naar.geel:after {
    background: var(--Yellow-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #C69033 81.17%));
}

section.border-Blauw.naar.groen:after {
    background: var(--Green-linear---KBK, linear-gradient(90deg, #1A3360 0%, #4BAE50 81.17%));
}

section.border-Blauw.naar.blauw:after {
    background: linear-gradient(90deg, #1A3360 0%, #1899D6 81.17%) !important;
}

section.border-Blauw.naar.rood:after {
    background: linear-gradient(270deg, #E63422 0%, #1A3360 100%);
}

section.header-layer.with-image > span {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.header-layer .content-box :is(h1, h2, h3, h4, h5, h6) {
    font-family: 'Merriweather';
}
.content-box.tag:before {
    opacity: 0;
    pointer-events: none;
}
.content-box.slider {
    margin: 88px 0px;
    position: relative;
}

.content-box.slider > .slide {
    position: absolute;
    display: block;
    width: calc(100% + 48px);
    height: 50px;
    background: grey;
    left: -24px;
    top: 50%;
    transform: translateY(-50%);
}
.content-box.slider .slide.expertise {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/12/tagline.svg) no-repeat;
    background-size: contain;
    background-position: center center;
}
.content-box.slider .slide.uitdagende {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2026/01/tagline-uitdagende.svg) no-repeat;
    background-size: contain;
    background-position: center center;
}
.content-box.slider h2 strong {
    color: #1A3360;
}
.font-Licht .content-box.slider h2 strong {
    color: white;
}

div#actueel-results {
    width: 100%;
}

.content-box.slider h2 {
    font-size: 72px;
    font-weight: 700;
    color: #f2f2f2;
}
.content-box.slider .title-element {
    text-align: center;
    margin: 0;
    font-family: 'Merriweather';
    position: absolute;
    min-width: max-content;
    left: 110%;
    /* animation: slideText 12s linear infinite; */
}
.content-box.slider .title-element {
    min-width: initial;
    width: calc(100% + 48px);
    font-size: 30px;
    white-space: nowrap;
    overflow: hidden;
    left: -30px;
}

@keyframes slideText {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-110% - 40%)); /* Moves left by its starting offset + its own width */
    }
}
.content-box.Titel.knoppen.links.en.tekst.rechts div.text-box * {
    font-weight: 400;
}

.diensten-scroll-box .dienst-item a * {
    color: white;
}
.diensten-scroll-box .dienst-item a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.diensten-scroll-box {
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
    position: relative;
}

.dienst-item.Verduurzamen:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 24px;
    bottom: 0;
    visibility: visible;
    background: linear-gradient(90deg, #1A3360 0%, #4BAE50 81.17%);
}

.dienst-item.Onderhouden:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 24px;
    visibility: visible;
    bottom: 0;
    background: linear-gradient(90deg, #1A3360 0%, #C69033 81.17%);
}
.dienst-item.Bouwen:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 24px;
    background: linear-gradient(90deg, #1A3360 0%, #1899D6 81.17%);
    visibility: visible;
    bottom: 0;
}
.diensten-scroll-box .dienst-item {
    position: sticky;
    display: block;
    width: 100%;
    height: 278px;
    overflow: hidden;
    top: 185px;
}

.site-header{
    width: 100vw;
}
.diensten-scroll-box .dienst-item a .title-element {
    margin-bottom: 0;
}
.diensten-scroll-box .dienst-item a .title-element {
    padding-left: 24px;
}
.diensten-scroll-box .dienst-item a .title-element:before {
    content: '';
    display: block;
    width: 20px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    top: 5px;
    background-size: contain;
    background-position: center center;
}
.header-cta-buttons.desktop-only a.n-btn:hover {
    text-decoration: underline;
}

.header-layer .content-box h1 {
    color: var(--White---KBK, #FFF);
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 0;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: flex;
    gap: 0px 8px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.header-layer .buttons-box {
    align-items: center;
    margin-top: 24px;
}
section.header-layer {
    padding: 120px 0px;
}
section.header-layer.with-video div.video-box {
    position: absolute;
    width: 100%;
    height: 100%;
    background: black;
    top: 0;
}
div.video-box > div {
    padding: 0 !important;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}



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

iframe#hover-video {
    border: 0 !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 1600px !important;
    max-width: initial !important;
    right: initial;
    margin: 0 auto;
}
section.header-layer.with-video.with-image * {
    z-index: 2;
}
img.video-placeholder {
    transition: .2s ease-in-out;
}
img.video-placeholder {
    transition: .2s ease-in-out;
    opacity: 1;
    z-index: 99999 !important;
    position: absolute;
}
section.header-layer.with-video.with-image div.video-box:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 3;
    top: 0;
    background: linear-gradient(to bottom,  rgba(0,34,64,0.4) 0%,rgba(0,0,0,0) 100%);
}
section.header-layer.with-image:after {
    content: '';
    position: absolute;
    bottom: -32px;
    left: 0;
    right: 0;
    height: 32px;
    background: linear-gradient(90deg, #1A3360 0%, #1899D6 81.17%);
    z-index: 1;
    visibility: visible;
}
section.header-layer.with-video:after {
    bottom: 0;
    z-index: 5;
}
.header-layer h1:before {
    content: '';
    display: block;
    width: 26px;
    height: 33px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: relative;
    left: 0;
    top: 0;
    background-size: contain;
    background-position: center center;
}
body.home .header-layer h1:before {
    height: 22px;
    top: -1px;
}
a.btn, a.Knop.met.stijl, button.Knop.met.stijl {
    padding: 11px 12px 11px 24px;
    border-radius: 0;
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140% !important;
    display: flex !important;
    gap: 16px;
    align-items: center;
    background: var(--btn-primary-bg);
    border: 1px solid var(--btn-primary-bg);
    height: auto;
    overflow: hidden;
    color: var(--font-light);
    position: relative;
}
a.Knop.met.stijl:before, button.Knop.met.stijl:before, .form-box .gform-footer.gform_footer.top_label:before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue.svg) no-repeat;
    background-position: -20px 50%;
    position: absolute;
    right: 12px;
    transition: .2s 
ease-in-out;
}
.nieuws-content:hover .nieuws-meta-bottom span.btn:after, .form-box .gform-footer.gform_footer.top_label:hover:before, button.Knop.met.stijl:hover:before, .nieuws-content:hover span.btn:before, a.Knop.met.stijl:hover:before, .project-item:hover span.c-btn:before, a.Licht.donkere.tekst:hover:before, button.Licht.donkere.tekst:hover:before {
    background-position: 50% 50%;
}
a.Licht.donkere.tekst:before, button.Licht.donkere.tekst:before, .project-item span.c-btn:before  {
      content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: -20px 50%;
    position: absolute;
    right: 12px;
    transition: .2s ease-in-out;
}
.nieuws-content .nieuws-meta-bottom span.btn:after {
     content: '';
    display: block;
    width: 48px;
    height: 48px;
    top: 0;
    left: 0;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: -20px 50%;
    position: absolute;
    right: 12px;
    transition: .2s ease-in-out;
}
.nieuws-content span.btn {
    position: relative;
}
.post-type-archive-projecten section.breadcrumbs {
    background: #f2f2f2;
    padding-bottom: 0;
}
.single-projecten .image-box {
    height: 278px;
}
.single-projecten .afb-slider .owl-dots {
    flex-basis: 200px !important;
    flex-wrap: wrap;
}

.single-projecten .afb-slider, section.content-laag .afb-slider  {
    display: flex !important;
    flex-wrap: wrap;
    gap: 56px;
    align-items: center;
}
.content-laag .afb-slider .owl-dots {
    max-width: 50%;
    flex-wrap: wrap;
}
section.content-laag .afb-slider .image-box {
    height: 240px;
}
.single-projecten .image-box a {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.single-projecten .image-box {
    transition: .2s ease-in-out;
}
.single-projecten .image-box:hover{
    opacity: .8;
}
.project-item span.c-btn:before, .nieuws-content span.btn:before {
    width: 48px;
    height: 48px;
    right:0;
}
a.Licht.donkere.tekst, button.Licht.donkere.tekst {
    background: white;
    border: 1px solid white;
    color: var(--btn-primary-bg);
}
button.Knop.met.stijl.Licht.donkere.tekst:after, a.Knop.met.stijl.Licht.donkere.tekst:after, .dienst-item a.btn:after {
    background: var(--btn-primary-bg) url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: center center;
}
a.btn:after, a.Knop.met.stijl:after, button.Knop.met.stijl:after {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: white url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue.svg) no-repeat;
    background-position: center center;
    transition: .2s ease-in-out;
}
.dienst-item a.btn:before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: -16px 50%;
    position: absolute;
    right: 12px;
    transition: .2s ease-in-out;
}
.dienst-item a.btn:hover:before {
    background-position: 50% 50%;
}
button.Knop.met.stijl:hover:after, a.Knop.met.stijl:hover:after {
    background-position: calc(100% + 24px) 50%;
}
.footer-above a.btn:hover:after, button.Knop.met.stijl.Licht.donkere.tekst:hover:after, a.Knop.met.stijl.Licht.donkere.tekst:hover:after, .dienst-item a.btn:hover:after {
    background-position: calc(100% + 24px) 50%;
}
.footer .flexbox-wrapper>div a:hover {
    color: white;
    text-decoration: none !important;
}

a.Tekst.met.onderlijning {
    color: var(--font-blue);
    text-decoration: underline;
    font-weight: 600;
}
a.Tekst.met.onderlijning:hover {
    text-decoration: none;
}
.header-layer .content-box.color-light a.Tekst.met.onderlijning {
    color: white;
}
.footer-above a.btn:after {
    background: #1A3360 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: center center;
}
.footer-above a.btn:before {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: -20px 50%;
    content: '';
    display: block;
    position: absolute;
    width: 40px;
    height: 40px;
    right: 12px;
    transition: .2s ease-in-out;
}
section.footer-above a.btn:hover:before {
    background-position: 50% 50%;
}
.footer-above .content-left {
    border-bottom: 1px solid rgba(255, 255, 255, 0.60);
    padding-bottom: 56px;
}
.footer-above.custom-content .content-left {
    padding-bottom: 72px;
}
.footer-above a.btn, .dienst-item a.btn {
    background: white;
    color: #1A3360;
    border: 1px solid white;
}
.dienst-item a.btn {
    margin-top: 40px;
}

section.breadcrumbs {
    padding: 32px;
}
section.breadcrumbs * {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}
section.breadcrumbs a:hover {
    text-decoration: underline;
}
section.breadcrumbs p#breadcrumbs * {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
section.breadcrumbs p#breadcrumbs span.breadcrumb-icon {
    display: block;
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    background-size: 14px;
    background-position: center center;
}

.informatie-blokken.Wit > .owl-stage-outer {
    border: none;
}
.informatie-blokken.Wit .informatie-blok {
    background: white;
    border: 1px solid #C5C9C7;
}
.informatie-blokken.Wit > div.owl-nav, .informatie-blokken.Wit > div.owl-dots {
    border: 0;
}
.informatie-blokken.Blauw div.informatie-blok {
    background: var(--btn-primary-bg);
}
.informatie-blokken.Blauw > div.owl-stage-outer, .informatie-blokken.Blauw > div.owl-dots, .informatie-blokken.Blauw > div.owl-nav {
    background: none;
}
.icon-box.icon-line-color svg path,
.icon-box.icon-line-color svg g{
    stroke: var(--icon-line-color) !important;
}
.icon-box.icon-fill-color svg path,
.icon-box.icon-fill-color svg g{
    fill: var(--icon-fill-color) !important;
}


/* 404 pagina */

body.error404 div#page {
    background: linear-gradient(180deg, #1A3360 4.51%, #1899D6 95.49%);
}
body.error404 section.error-404 .contact-content-laag {
    background: transparent !important;
}
.error404 section.breadcrumbs * {
    color: white;
}
.contact-content-laag.font-Licht .service-box h4 {
    color: white;
}

/* CIJFERS LAAG */

.cijfers-tekst-laag.afb-tekst-laag .title-element {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    margin-bottom: 32px;
    position: relative;
    padding-left: 32px;
}
.cijfers-box > div .titel {
    font-size: 16px;
}
.cijfers-box > div .getal {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 8px;
}
.cijfers-tekst-laag.afb-tekst-laag.font-Licht .title-element, .cijfers-tekst-laag.font-Licht .cijfers-box > div .getal {
    color: white;
}
.cijfers-box > div {
    flex-basis: 100%;
    width: 100%;
    color: #002240;
}
.cijfers-box {
    margin-top: 32px;
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
}
.cijfers-tekst-laag.afb-tekst-laag .content-box:nth-of-type(1) .title-element {
    margin-bottom: -32px;
}

.no-image.content-box .title-element {
    margin-bottom: 32px !important;
}
.cijfers-box.no-image {
    margin-top: 0;
}

@media (max-width: 600px) {

.cijfers-tekst-laag span.image-box.one-image {
    height: 278px !important;
}

body:not(.home) .header-layer .content-box h1 {
    padding-left: 24px;
}
section.header-layer.with-video.with-image img.video-placeholder, body.home section.header-layer.with-video.with-image img.video-placeholder {
    height: 100% !important;
}
.vestigingen-overzicht {
    overflow-y: initial !important;
}
.contact-content-laag .content-box:nth-of-type(2) .text-box {
    border-top: 1px solid #C5C9C7;
    margin-top: 48px;
    padding-top: 48px;
}
.contact-content-laag .content-box:nth-of-type(2) {
    display: flex;
    flex-wrap: wrap;
}
.contact-content-laag .content-box:nth-of-type(2) .service-box {
    order: -1;
    margin-top: 0;
    border-top: 0;
    padding-top: 0;
    flex-basis: 100%;
    width: 100%;
}
.content-laag .image-box.two-images > .image-box {
    width: 100%;
    height: 240px !important;
}
.content-laag .image-box.two-images {
    flex-wrap: wrap;
    height: auto;
}

.content-box.slider {
    margin: 44px 0px;
}

body:not(.home) .header-layer .content-box h1:before {
    position: absolute;
    left: 0;
    top: 8px;
    height: 26px;
    width: 20px;
}

}

/*  CONTENT - LAAG  */

.tag:not(.content-box) {
    color: var(--White---KBK, #FFF);
    font-family: Merriweather;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    padding-left: 40px;
    padding-top: 8px;
    padding-bottom: 7px;
    margin-bottom: 32px;
    position: relative;
    width: fit-content;
    padding-right: 56px;
    z-index: 2;
    clip-path: polygon(0 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
}
.single-actueel .tag:not(.content-box) {
    padding-left: 16px;
    padding-right: 40px;
}
span.tag.Onderhouden:before {
    background: linear-gradient(90deg, #1A3360 0%, #C69033 81.17%);
}
span.tag.Verduurzamen:before {
    background: linear-gradient(90deg, #1A3360 0%, #4BAE50 81.17%);
}
span.tag.Bouwen:before {
    background: linear-gradient(90deg, #1A3360 0%, #4BAE50 81.17%);
}
.tag:not(.content-box):before {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--Blue-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #1899D6 81.17%));
    background: var(--Blue-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #004D9D 81.17%));
    top: 0;
    left: 0;
    z-index: -1;
}
.parent-pageid-1260 .tag:before, .page-id-1260 .tag:before {
    background: var(--Yellow-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #C69033 81.17%));
}
span.tag.Nieuwbouw:before {
    background: var(--Blue-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #1899D6 81.17%));
}
.parent-pageid-747 .tag:before, .page-id-747 .tag:before, span.tag.Bouwen:before, span.tag.Bouw:before, span.tag.Renovatie:before, span.tag.Ontwikkeling:before, span.tag.Zorg:before, span.tag.Transformatie:before {
    background: var(--Blue-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #1899D6 81.17%));
}
.parent-pageid-1270 .tag:before, .page-id-1270 .tag:before {
    background: var(--Green-linear---KBK, linear-gradient(90deg, #1A3360 0%, #4BAE50 81.17%));
}
.volle-afb-tekst-laag .tag:not(.content-box):before {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/tag-background.svg) no-repeat;
        background-size: cover;
    background-position: 100% 0%;
}

.volle-afb-tekst-laag .tag:not(.content-box):after {
    display: none;
}
.tag:after {
    content: '';
    position: absolute;
    width: 30px;
    height: calc(100% + 1px);
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/button-bg.svg) no-repeat;
    top: 0;
    clip-path: polygon(0 100%, 100% 0, 100% 100%);
    right: -1px;
    background-size: cover;
    background-position: 100% 0%;
}
.tag-\#1a3360 .tag::after {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/button_bg_blue.svg) no-repeat;
}
.diensten-overzicht .diensten-items {
    position: relative;
}
.diensten-overzicht .box-wrapper .diensten-items {
    top: 0;
    transition: initial !important;
    opacity: 0;
    pointer-events: none;
    display: none;
}

.diensten-overzicht .box-wrapper {
    width: 100%;
    position: relative;
}
.diensten-overzicht .diensten-dropdown div {
    color: #002240;
}
.diensten-overzicht .diensten-dropdown {
    width: 100%;
    flex-basis: 100%;
    background: var(--Grey---KBK, #F2F2F2) url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/10/chevron-down.svg) no-repeat;
    height: 64px;
    padding: 12px;
    display: flex;
    align-items: center;
    color: #002240;
    background-position: 95% 50%;
    margin-bottom: 72px;
}
.diensten-overzicht .tag:after {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/button_bg_blue.svg);
    background-size: cover;
    background-position: 100% 0%;
}
.diensten-overzicht .diensten-dropdown.active {
    display: none;
}
.diensten-overzicht.active .diensten-items {
    display: block;
    pointer-events: all;
    opacity: 1;
}
.diensten-overzicht .box-wrapper .diensten-items div.dienst-titel {
    width: 100%;
    flex-basis: 100%;
    background: var(--Grey---KBK, #F2F2F2);
    height: 64px;
    padding: 12px;
    display: flex;
    align-items: center;
    color: #002240;
    border-bottom: 1px solid grey;
}
/* .animatie .title-element, .gap-box .title-element, .afb-tekst-laag .title-element {
    color: var(--font-blue);
    font-family: "Zurich BT";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    padding-left: 0;
    margin-bottom: 40px;
} */
.content-laag .content-box.achtergrond.kleur.Grijs .tag:after {
    background: #F2F2F2;
}
.stappen-box span.image-box.one-image {
    height: 228px;
    margin-bottom: 32px;
}
.stappen-box h4 {
    font-family: 'Merriweather';
    font-weight: 400;
    margin-bottom: 16px;
    line-height: 140%;
}
section.font-Licht .content-box.Titel.knoppen.links.en.tekst.rechts .title-element {
    color: white;
}
.content-box.Titel.knoppen.links.en.tekst.rechts h3.title-element:before {
    height: 22px;
    top: 5px;
}

.content-box.Titel.knoppen.links.en.tekst.rechts h3.title-element {
    font-size: 28px;
}
.afb-tekst-laag .flexbox-wrapper.no-space div.content-box .tag:after {
    background: white;
}

.afb-tekst-laag .flexbox-wrapper.no-space div.content-box .title-element, .afb-tekst-laag .flexbox-wrapper.no-space div.content-box .text-box * {
    color: var(--font-blue);
}
.text-box ul, .text-box ol {
    margin-left: 20px;
}
.title-element, .content-box.Titel.knoppen.links.en.tekst.rechts .title-element {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    margin-bottom: 32px;
    position: relative;
    padding-left: 32px;
}
.content-laag .content-box.achtergrond.kleur.Grijs {
    background: #F2F2F2;
}
.content-laag .content-box.Titel.links.en.tekst.en.knoppen.rechts.met.achtergrond.kleur {
    padding: 64px 32px;
}
.content-laag .content-box .popup-box {
    margin-top: 24px;
}
.content-box:not(.animatie) .title-element:before, .content-box.Titel.knoppen.links.en.tekst.rechts .title-element:before {
    content: '';
    display: block;
    height: 24px;
    width: 31px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    top: 6px;
    background-size: contain;
    background-position: center center;
    opacity: 1;
}
.content-laag .content-box.Onder.elkaar h3.title-element:before, .afb-tekst-laag .content-box h3.title-element:before {
    height: 20px;
}

.content-laag .content-box.Onder.elkaar h3.title-element, .afb-tekst-laag .content-box h3.title-element {
    font-size: 28px;
}
/* .gap-box .title-element:before, .afb-tekst-laag .title-element:before {
    opacity: 0 !important;
} */
.overzicht-laag .content-box:not(.animatie) .title-element:before, .content-box.Titel.knoppen.links.en.tekst.rechts .title-element:before {
    height: 26px;
    width: 31px;
    top: 6px;
    opacity: 1 !important;
}
.text-box * {
    font-family: "Zurich BT";
    font-size: 18px;
    color: var(--font-blue);
}
.text-box.grote_tekst {
    margin-bottom: 24px;
}
.text-box.grote_tekst p {
    font-size: 24px;
    font-weight: 400;
    line-height: 130%;
}
.button-box {
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}
section.content-laag {
    padding: 72px 0px;
    overflow: hidden;
}
.informatie-blok h4 {
    color: var(--Blue---KBK, #1A3360);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 32px;
    border-bottom: 1px solid #C5C9C7;
    padding-bottom: 32px;
    word-break: break-word;
}
.informatie-blok span.icon-box {
    display: flex;
    width: 48px;
    height: 48px;
    background-color: var(--btn-primary-bg) !important;
    background-repeat: no-repeat !important;
    justify-content: center;
    align-items: center;
    background-position: center center !important;
    margin-bottom: 24px;
}
.informatie-blok {
    background: var(--Grey---KBK, #F2F2F2);
    padding: 32px;
}
.informatie-blok p, .informatie-blok p span, .informatie-blok p a {
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    color: var(--font-blue);
}
.gap-box > div {
    flex-basis: 100%;
    width: 100%;
}

.gap-box {
    display: flex;
    flex-wrap: wrap;
    gap: 56px;
}
.image-box {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
span.image-box.one-image {
    display: block;
    width: 100%;
    height: 278px;
}
.two-images {
    display: flex;
    gap: 20px;
    height: 278px;
}
.two-images > div {
    width: 280px;
}

 .owl-nav > .owl-next {
    background: var(--btn-primary-bg) url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    background-position: center center;
}
.owl-nav > .owl-prev {
    transform: rotate(180deg);
    background-color: white;
}
 .owl-nav > button {
    display: flex;
    width: 48px;
    height: 48px;
    appearance: none;
    border:none;
    background: #F2F2F2 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue.svg) no-repeat;
    background-position: center center;
    color: transparent !important;
}
.owl-nav > button span {
    position: absolute;
    color: transparent;
}
.owl-nav {
    display: flex;
    gap: 8px;
    margin-left: auto;
    order: 3;
}
.informatie-blokken .owl-stage-outer .owl-stage {
    padding-left: 0 !important;
}
.informatie-blokken .owl-stage-outer {
    width: calc(100% + 24px);
    margin-right: -24px;
}
.informatie-blokken {
    gap: 56px;
    display: flex !important;
    flex-wrap: wrap;
}
.informatie-blokken.Wit > div {
    background: none;
    border: 1px solid #C5C9C7;
}
.informatie-blokken.Blauw > div * {
    color: white;
}

.informatie-blokken.Blauw > div {
    background: var(--btn-primary-bg);
}
.informatie-blokken.Blauw > div span.icon-box {
    background-color: white !important;
}
.informatie-blokken.Blauw span.icon-box svg * {
    fill: var(--btn-primary-bg);
}
/* .informatie-blokken.Grijs span.icon-box svg *, .informatie-blokken.Wit span.icon-box svg * {
    fill: white;
} */
.owl-dots > button.active {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/active-owl-dot.svg) no-repeat;
}
.owl-dots > button {
    display: block;
    border: none;
    width: 8px;
    height: 8px;
    background: #f2f2f2;
    border-radius: 100%;
    padding: 0;
}
.submenu-toggle::after {
    display: none !important;
}
.mobile-menu li.sf-field-submit {
    display: none;
}

.owl-dots {
    display: flex;
    gap: 16px;
    align-items: center;
}

.overlay-box {
    position: relative;
}

.afbeelding-content-slider .owl-stage {
    margin-bottom: 56px;
    padding-left: 0 !important;
}

.afbeelding-content-slider {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: space-between;
}
.afbeelding-content-slider {
    width: calc(100% + 24px) !important;
}
.afbeelding-content-slider .owl-nav {
    margin-right: 24px;
}
.afbeelding-content-item .content-box h4 {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    margin-bottom: 24px;
    margin-top: 32px;
}
.font-Licht .afbeelding-content-slider .afbeelding-content-item .content-box h4 {
    color: white;
}
section.font-Licht .title-element {
    color: white;
}
/*  AFB - TEKST LAAG */

.afb-tekst-laag .flexbox-wrapper {
    gap: 64px;
}
.afb-tekst-laag, .Overal.ruimte {
    padding: 72px 0px;
}
.Nergens.ruimte {
    padding: 0;
}
.Geen.ruimte.boven {
    padding-top: 0;
    padding-bottom: 72px;
}
.afb-tekst-laag .content-box ul li:first-child {
    margin-top: 32px;
}

.afb-tekst-laag .content-box ul li:last-child {
    margin-bottom: 0;
}
.afb-tekst-laag .content-box ul {
    margin-left: 20px;
}
.Geen.ruimte.onder {
    padding-bottom: 0;
    padding-top: 72px;
}
.afb-tekst-laag .flexbox-wrapper.no-space div.content-box {
    background: white;
    position: relative;
    padding: 24px;
}
.afb-tekst-laag .video-box {
    flex-basis: 100%;
    width: 100%;
    overflow: hidden;
    height: 280px;
}

.afb-tekst-laag .flexbox-wrapper.no-space {
    gap: 0;
}

/* CTA - LAAG */

.cta-laag .content-box {
    background: #F2F2F2;
    padding: 32px;
        width: 100%;
}
section.cta-laag.font-Licht .content-box * {
    color: #002240;
}
section.cta-laag h3.title-element {
    font-size: 20px;
}
section.cta-laag h1.title-element {
    font-size: 32px;
}
.cta-laag .title-element, .faq-laag .title-element {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 48px;
}
.faq-laag.font-Licht .title-element {
    color: white;
}
.faq-laag .content-box h1.title-element, .cijfers-tekst-laag.afb-tekst-laag h1.title-element {
    font-size: 40px;
}
.faq-laag .content-box:not(.animatie) h1.title-element:before, .cijfers-tekst-laag.afb-tekst-laag .content-box:not(.animatie) h1.title-element:before {
    height: 33px;
    width: 24px;
}
.faq-laag h3.title-element, .cijfers-tekst-laag.afb-tekst-laag h3.title-element  {
    font-size: 28px;
    padding-left: 24px;
}
.faq-laag .content-box:not(.animatie) h3.title-element:before, .cijfers-tekst-laag.afb-tekst-laag .content-box:not(.animatie) h3.title-element:before {
    height: 22px;
    width: 16px;
    top: 8px;
}
.cijfers-tekst-laag.afb-tekst-laag .content-box:not(.animatie) h3.title-element:before {
    top: 4px;
}
.font-Licht .uitklap-item.accordion-item * {
    color: #002240;
}
.font-Licht .uitklap-item.accordion-item {
    background: white;
}
.font-Licht .uitklap-item .text-box {
    background: white;
}
.cta-laag .person-box .image-box {
    width: 100px;
    height: 78px;
}
.cta-laag .person-info h4 {
    color: var(--font-blue);
text-align: center;

/* Heading/H6 */
font-family: Merriweather;
font-size: 20px;
font-style: normal;
font-weight: 400;
line-height: 140%; /* 28px */
}

.person-info p {
    color: rgba(0, 43, 69, 0.60);
    text-align: center;
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-top: 8px;
}
.text-box p a {
    text-decoration: underline;
}
.text-box p a:hover {
    text-decoration: none;
}
.cta-laag .flexbox-wrapper > span.image-box {
    height: 215px;
}
.cta-laag .flexbox-wrapper {
    gap: 0;
}
.person-box > .person-contact {
    clear: both;
    margin-top: 32px;
    display: block;
    overflow: hidden;
        float: right;
    width: 100%;
}
.person-box > .person-info {
    float: right;
    overflow: hidden;
}
.person-box > span.image-box {
    float: left;
    overflow: hidden;
}
.person-box {
    position: relative;
    overflow: hidden;
    clear: both;
    margin-bottom: 48px;
}
.person-box > .person-info * {
    text-align: left !important;
}
.person-box > .person-info {
    float: right;
    overflow: hidden;
    width: calc(100% - 116px);
    text-align: left;
    display: block;
    padding-top: 10px;
}
.person-contact a:before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background: black;
}
.person-contact a:hover {
    text-decoration: underline;
}
a.call-btn:before {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/call-icon.svg) no-repeat;
    background-position: center center;
}
a.email-btn:before {
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/mail-icon.svg) no-repeat;
    background-position: center center;
}
.person-contact a {
    color: var(--font-blue);
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    align-items: center;
    padding: 8px 12px;
}

/*  FAQ LAAG */

.faq-laag h2 {
    font-size: 32px;
    margin-bottom: 32px ;
}
.faq-laag h2.title-element {
    margin-bottom: 32px;
}
.faq-box {
    width: 100%;
    position: relative;
    margin-top: 56px;
}
.vragen-box {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.uitklap-item {
    border: 1px solid #C5C9C7;
    padding: 24px;
    transition: .3s ease-in-out;
    flex-basis: 100%;
    width: 100%;
}
h3.uitklap {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 18px;
    font-style: normal;
    position: relative;
    font-weight: 400;
    line-height: 140%;
}
h3.uitklap.accordion-header:after {
    content: '';
    display: block;
    position: absolute;
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue-1.svg) no-repeat;
    background-position: center center;
    right: 0;
    top: 0;
    transform: rotate(90deg);
    transition: .2s ease-in-out;
}
.uitklap-item.accordion-item.is-active h3:after {
    transform: rotate(270deg);
}
.text-box.accordion-content > p {
    padding: 24px;
}
.accordion-item.is-active .accordion-content {
    margin-top: 24px;
}

.accordion-item .accordion-content {
    transition: .3s ease-in-out;
}

.uitklap-item .text-box * {
    color: white;
    font-size: 16px;
}

.uitklap-item .text-box {
    background: var(--Dark-Blue---KBK, #002240);
    padding: 0px;
    color: white;
}

.faq-box .uitklap-item .text-box {
    padding-left: 24px;
    padding-right: 24px;
}

/*  POP UP BOX  */

.popup-box button.Tekst.met.onderlijning {
    color: var(--Dark-Blue---KBK, #002240);
    text-align: center;
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-decoration: underline;
}
.popup-box button.Tekst.met.onderlijning:hover {
    text-decoration: none;
}
.afb-tekst-laag .popup-box {
    margin-top: 40px;
}

.popup-box button {
    appearance: none;
    background: none;
    border: 0;
    padding: 0;
    font-family: 'Zurich BT';
    font-size: 16px;
}
.modal-content .gform_heading {
    display: none;
}
.modal-content button.modal-close {
    position: absolute;
    right: 24px;
    top: 24px;
    appearance: none;
    width: 40px;
    height: 40px;
    border: 1px solid #002240;
    color: transparent;
    background: #f2f2f2 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/close.svg) no-repeat;
    background-position: center center;
    transition: .2s ease-in-out;
}
.modal-content button.modal-close:hover {
    background: #d7d7d7 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/close.svg) no-repeat;
    background-position: center center;
}
.modal-content .content-box p {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.modal-content .content-box h3 {
    color: rgba(0, 43, 69, 0.80);
    font-family: Merriweather;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 24px;
}
.modal-content .content-box {
    position: relative;
    padding: 40px;
}
.modal-content span.image-box.one-image {
    display: block;
    width: 100%;
    height: 240px;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
.modal-content {
    max-height: 70vh;
    overflow-y: scroll;
}
.form-box .gform_wrapper form label.gfield_label {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 12px;
}
.gfield--type-consent div label a {
    color: #002240;
    text-decoration: underline;
}
.ginput_container.ginput_container_consent a:hover {
    text-decoration: none;
}
.ginput_container.ginput_container_consent input {
    margin: 0;
}
.gfield--type-consent div label, .gfield--type-consent div label a {
    font-size: 14px;
}
.gfield--type-consent div input:checked {
    background: #002240;
    border: 1px solid #002240;
}
.form-box .gform-footer.gform_footer.top_label input {
    border-radius: 0;
    color: var(--White---KBK, #FFF);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 0 !important;
    background: transparent;
    border: none !important;
}
.form-box .gform-footer.gform_footer.top_label:after {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    transition: .2s ease-in-out;
    background: white url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue.svg) no-repeat;
    background-position: center center;
}
.form-box .gform-footer.gform_footer.top_label:hover:after {
    background-position: 40px 50% !important;
}
.form-box .gform-footer.gform_footer.top_label {
    padding: 0 !important;
    margin: 0 !important;
    margin-top: 24px !important;
    width: fit-content;
    background: #002240;
    display: flex;
    gap: 0;
    align-items: center;
    position: relative;
    padding-right: 16px !important;
}
.form-box .gform-footer.gform_footer.top_label:before {
    right: 16px;
}

.form-box .gform-footer.gform_footer.top_label input {
    padding: 16px !important;
    padding-left: 24px !important;
    height: 64px;
}
.gfield--type-consent div input {
    appearance: none;
    width: 24px;
    height: 24px !important;
    min-height: initial !important;
}
.gfield--type-consent div {
    display: flex;
    align-items: center;
    gap: 8px;
}
.gfield--type-consent legend {
    display: none !important;
}
.modal-content .form-box {
    margin-top: 24px;
}
span.gfield_required {
    display: none !important;
}
.modal-content span.gfield_required {
    display: inline-block !important;
}
.form-box form input , .form-box form textarea{
    border: 1px solid var(--Dark-Grey---KBK, #C5C9C7);
    background: none;
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.modal-content {
    padding: 0;
    background: #F2F2F2;
}

/* PROJECT/ACTUEEL LAAG  */
div.filter {
    margin-top: 40px;
    margin-bottom: 56px;
}
li.sf-field-post-meta-categorie ul li label {
    padding: 0 !important;
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}
.overzicht-laag li.sf-field-post-meta-soort_project select, .overzicht-laag li.sf-field-post-meta-uitvoering select {
    appearance: none;
    width: 100%;
    padding: 12px;
    padding-left: 24px;
    background: #F2F2F2 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/10/chevron-down.svg) no-repeat;
    background-position: 95% 50%;
    border: none;
    font-family: 'Zurich BT';
    font-size: 16px;
    font-weight: 400;
    color: #002240;
    position: relative;
    min-height: 64px;
}
.post-type-archive-projecten .overzicht-laag li.sf-field-post-meta-soort_project select, .post-type-archive-projecten .overzicht-laag li.sf-field-post-meta-uitvoering select {
    background: white url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/10/chevron-down.svg) no-repeat;
    background-position: 95% 50%;
}
.post-type-archive-projecten li.sf-field-search input {
    background: white;
}
.admin-bar #swipebox-overlay {
    top: 0 !important;
}
#swipebox-close {
    top: 50px;
    right: 50px;
}
#swipebox-close:hover {
    opacity: .6;
}
.projecten-overzicht > div {
    flex-basis: 100%;
    width: 100%;
}
.projecten-overzicht {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.overzicht-laag li.sf-field-post-meta-soort_project label, .overzicht-laag li.sf-field-post-meta-uitvoering label {
    width: 100%;
}
.overzicht-laag li.sf-field-post-meta-soort_project {
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 16px;
}

.overzicht-laag .searchandfilter h4 {
    font-size: 24px;
    font-family: 'Merriweather';
    color: #002240;
    font-weight: 400;
    margin-bottom: 16px;
    padding: 0;
}

li.sf-field-post-meta-categorie ul li input {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    appearance: none;
}
li.sf-field-post-meta-categorie ul li {
    border: 1px solid var(--Dark-Blue---KBK, #002240);
    padding: 8px;
    position: relative;
}
li.sf-field-post-meta-categorie ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
li.sf-field-post-meta-categorie {
    padding: 0 !important;
    margin-bottom: 24px !important;
}
li.sf-field-post-meta-categorie h4 {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 16px;
    padding: 0;
}
li.sf-option-active label {
    color: white !important;
}

li.sf-option-active {
    background: #002240;
}
li.sf-field-search:before {
    position: absolute;
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/search.svg) no-repeat;
    background-position: center center;
    top: 16px;
    left: 16px;
    content: '';
}
.result-count {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    text-align: right;
    width: 100%;
    margin-bottom: 48px;
}
.nieuws-item a .nieuws-content {
background: white;
    position: relative;
    padding: 32px;
    border: 1px solid #F2F2F2;
    border-top: 0;
}
.nieuws-content .tag {
    margin-bottom: 24px;
}
.tag-\#f2f2f2 .tag:after {
    background: #f2f2f2;
}
.MVO.Nieuws.tag:before {
    background: #004D9D;
}
section.tag-\#000000 h3.tag:after {
    background: black;
}
.nieuws-content h3 {
    color: var(--Blue---KBK, #1A3360);
    font-family: Merriweather;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 24px;
}
.nieuws-meta-bottom .flexbox-wrapper {
    gap: 24px;
    margin-bottom: 24px;
}

.nieuws-meta-bottom .flexbox-wrapper * {
    color: var(--Bright-Blue---KBK, #004D9D);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}
.nieuws-content span.btn {
    width: 48px;
    height: 48px;
    display: block;
    background: #002240 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    color: transparent;
    background-position: center center;
    transition: .2s ease-in-out;
}
span.nieuws-thumb.fallback {
    background: grey;
}
.nieuws-overzicht > .nieuws-item {
    flex-basis: 100%;
    width: 100%;
}
.nieuws-overzicht {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.nieuws-item a span.nieuws-thumb img {
    display: none;
}
.nieuws-item a span.nieuws-thumb {
    display: block;
    width: 100%;
    height: 218px;
    position: relative;
    transition: .2s ease-in-out;
    overflow: hidden;
    background-size: cover !important;
    background-position: center center !important;
}
.nieuws-item a span.nieuws-thumb.fallback {
    background: #f2f2f2 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/KBK-logo-blauw.svg) no-repeat;
    background-size: 160px !important;
}
.nieuws-item a {
    position: relative;
    width: 100%;
    height: 100%;
}
li.sf-field-search label {
    width: 100%;
}
li.sf-field-search input {
    padding: 16px 8px;
    background: #F2F2F2;
    appearance: none;
    border: none;
    color: rgba(0, 0, 0, 0.60);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    width: 100%;
    padding-left: 48px;
}
li.sf-field-search {
    padding: 0 !important;
    position: relative;
}

.post-type-slider .title-element {
    font-family: 'Merriweather';
    font-size: 32px;
    padding-left: 24px;
    position: relative;
}
.post-type-slider .title-element {
    flex-basis: 100%;
    width: 100%;
}
section.post-type-slider.overzicht-laag.Overal.ruimte.font-Licht .project-content h4 {
    color: #002240;
}
.post-type-slider h3.title-element:before {
    height: 22px;
}

.post-type-slider h3.title-element {
    font-size: 28px;
    
}
section.font-Licht li.sf-field-post-meta-categorie * {
    color: white;
}
.overzicht-laag .content-box h3.title-element {
    font-size: 28px;
    padding-left: 24px;
}
.overzicht-laag .content-box h3.title-element:before {
    height: 22px !important;
    top: 4px !important;
    width: 19px !important;
}
.post-type-slider .title-element:before {
    content: '';
    display: block;
    width: 20px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    top: 5px;
    background-size: contain;
    background-position: center center;
}
.post-type-slider .posts-slider {
    margin-top: 40px;
}

.post-type-slider .content-box > a {
    width: fit-content;
}
.post-type-slider .posts-slider {
    margin-top: 16px;
    display: flex !important;
    flex-wrap: wrap;
    gap: 56px;
    width: calc(100% + 24px);
}
.post-type-slider .owl-nav > button.owl-prev {
    background-color: white;
}
.post-type-slider .owl-dots > button:not(.active) {
    background: white;
}
.project-item a span.project-thumb {
    display: block;
    position: relative;
    width: 100%;
    height: 218px;
    overflow: hidden;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
.project-item a span.project-thumb  img { 
    display: none;
}
.project-content h4 {
    font-family: 'Merriweather';
    font-size: 16px;
    color: var(--color-secondary);
    font-weight: 400;
    margin-top: 24px;
}
.project-item span.c-btn {
    display: block;
    width: 48px;
    height: 48px;
    background: #002240 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-white.svg) no-repeat;
    margin-top: 24px;
    background-position: center center;
    transition: .2s ease-in-out;
}
.project-item:hover span.c-btn, .nieuws-item:hover span.btn {
    background-position: calc(100% + 24px) 50%;
}
.posts-slider .owl-nav {
    margin-right: 24px;
}
.project-content {
    background: var(--White---KBK, #FFF);
    position: relative;
    padding: 32px;
}
.project-item .project-meta span.tag {
    margin-bottom: 0;
}
.project-item .project-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 8px;
}
.post-type-slider a.Knop.met.stijl {
    width: fit-content;
}
.project-item a {
    display: block;
    position: relative;
}
.post-type-slider .flexbox-wrapper > a {
    order: 3;
    margin-top: 40px;
}
.posts-slider .owl-stage {
    padding-left: 0 !important;
}
.project-informatie > div p {
    font-family: 'Merriweather';
    color: #002240;
    font-size: 18px;
}
.project-informatie > div span {
    color: #002240;
    margin-bottom: 16px;
    display: block;
}
.project-informatie > div {
    flex-basis: calc(50% - 20px);
    width: calc(50% - 20px);
}
.project-informatie {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

/* HOMEPAGINA */

section.border-Geen:after {
    display: none;
}

section.border-Geen {
    border-bottom: 0 !important;
}
body.home section.header-layer.with-image:after {
    display: none;
}
body.home section.header-layer.with-image {
    border-bottom: 0;
    height: calc(100vh - 115px);
        display: flex;
        overflow: hidden;
    align-items: center;
}
body:not(.home) section.header-layer.with-image.with-video {
    overflow: hidden;
    display: flex;
    align-items: center;
    border-bottom: 0;
}
.header-layer .inner.page-down-indicator p {
    color: white;
}
.header-layer .inner.page-down-indicator span svg {
    transform: rotate(90deg);
}
.header-layer .inner.page-down-indicator span {
    display: flex;
    width: 24px;
    height: 24px;
    justify-content: center;
    align-items: center;
}
.header-layer .inner.page-down-indicator {
    border-top: 1px solid rgba(255, 255, 255, 0.60);
    position: absolute;
    bottom: 24px;
    width: calc(100% - 48px);
    left: 24px;
    padding-top: 24px;
    display: flex;
    justify-content: space-between;
    padding-left: 0;
    padding-right: 0;
        margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
}

.content-box.animatie {
    max-width: 1006px;
}
.volle-afb-tekst-laag {
    position: relative;
    padding: 72px 0px;
}
.volle-afb-tekst-laag > span.image-box.bg-image {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}
section.volle-afb-tekst-laag.border-Blauw.naar.rood:after, section.reviews-laag.border-Blauw.naar.rood:after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 32px;
    background: linear-gradient(270deg, #E63422 0%, #1A3360 100%);
    z-index: 2;
    bottom: 0;
    visibility: visible;
}
section.reviews-laag.border-Blauw:not(.rood):after {
        content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 32px;
    background: linear-gradient(270deg, #1A3360 0%, #1A3360 100%);
    z-index: 2;
    bottom: 0;
    visibility: visible;
}
section.reviews-laag.border-Blauw.naar.geel:after {
        content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 32px;
    background: var(--Yellow-Linear---KBK, linear-gradient(90deg, #1A3360 0%, #C69033 81.17%));
    z-index: 2;
    bottom: 0;
    visibility: visible;
}
section.reviews-laag.border-Blauw.naar.groen:after {
        content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 32px;
    background: var(--Green-linear---KBK, linear-gradient(90deg, #1A3360 0%, #4BAE50 81.17%));
    z-index: 2;
    bottom: 0;
    visibility: visible;
}
.volle-afb-tekst-laag .title-element:before {
    content: '';
    display: block;
    width: 26px;
    height: 31px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    top: 8px;
    background-size: contain;
    background-position: center center;
}
.volle-afb-tekst-laag h2.title-element {
    font-size: 40px;
}
section.volle-afb-tekst-laag.font-Donker .content-box .title-element, section.volle-afb-tekst-laag.font-Donker .content-box .text-box * {
    color: var(--Dark-Blue---KBK, #002240);
}
section.volle-afb-tekst-laag.Content.gecentreerd .content-box .text-box {
    margin-left: auto;
    margin-right: auto;
    margin-top: 40px;
}
.volle-afb-tekst-laag .title-element {
    font-family: 'Merriweather';
    font-size: 32px;
    padding-left: 32px;
    position: relative;
    color: white;
}
.volle-afb-tekst-laag .text-box * {
    color: white;
}
.volle-afb-tekst-laag .title-element {
    margin-bottom: 192px;
}

/* DIENSTEN OVERZICHT LAAG */

section.font-Licht * {
    color: white;
}
section.diensten-overzicht div.diensten-overzicht {
    width: 100%;
    flex-basis: 100%;
}
.diensten-home span.blue-overlay {
      position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/Overlay-BG-blue.svg) no-repeat;
    background-position: 100% 0%;
}
.diensten-home {
    position: relative;
    padding: 72px 0px;
}
.diensten-overzicht h2.title-element, .contact-content-laag h2.title-element {
    font-size: 32px;
    line-height: 120%;
    margin-bottom: 56px;
}
.contact-content-laag h2.title-element { 
    margin-bottom: 32px;
}
.contact-content-laag form label, .contact-content-laag form div#gform_fields_3, .contact-content-laag form div span, .contact-content-laag form div {
    margin: 0;
}
.contact-content-laag form label {
    font-weight: 400 !important;
    font-size: 16px !important;
    display: block !important;
    line-height: 140%;
    margin-bottom: 8px;
}
.contact-content-laag form textarea {
    height: 120px !important;
}
.contact-content-laag form input, .contact-content-laag form textarea {
    border: 1px solid #C5C9C7;
    padding: 12px;
}
#gform_3 .gform-footer.gform_footer.top_label {
    margin: 0 !important;
    padding: 0 !important;
    margin-top: 16px !important;
}
#gform_3 .gform-footer.gform_footer.top_label input {
    margin: 0;
    border: 0;
    background: #002240;
    color: white;
    border-radius: 0;
    padding: 12px 24px;
    font-weight: 400;
    font-family: 'Zurich BT';
    font-size: 16px;
}
.contact-content-laag form input, .contact-content-laag form textarea {
    min-height: 56px !important;
}
.diensten-overzicht .title-element, .contact-content-laag .title-element {
    font-family: 'Merriweather';
}
.dienst-image {
    display: block;
    width: 100%;
    height: 278px;
    background: grey;
    margin-bottom: 56px;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
.diensten-items {
    width: 100%;
    display: block;
    margin-bottom: 72px;
}
.dienst-item {
    flex-wrap: wrap;
}
.dienst-item > * {
    flex-basis: 100%;
    width: 100%;
}
.dienst-titel {
    cursor: pointer;
    transition: .1s ease-in-out;
}
.dienst-titel:hover {
    opacity: 1;
}

.contact-content-laag .content-box:nth-of-type(2) {
    border-top: 1px solid #C5C9C7;
    margin-top: 48px;
    padding-top: 48px;
}
.contact-content-laag .content-box:nth-of-type(2) h4, .contact-content-laag .content-box:nth-of-type(2) h3 {
    font-family: 'Merriweather';
}
.contact-content-laag .content-box:nth-of-type(2) h3:nth-of-type(2) {
    margin-top: 32px;
}
.contact-content-laag .content-box:nth-of-type(2) h3 {
    font-size: 20px;
    margin-bottom: 16px;
    font-weight: 400;
    line-height: 140%;
}
.contact-content-laag .content-box:nth-of-type(2) .text-box p a {
    display: block;
    margin: 0;
}
.service-box h4 {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 32px;
}
.service-box .service-item {
    position: relative;
    padding: 24px;
    margin-bottom: 16px;
    background: var(--Grey---KBK, #F2F2F2);
}
.service-box .service-item:last-of-type {
    margin-bottom: 0;
}
.service-item p {
    color: #002240;
}
.service-box {
    margin-top: 64px;
    border-top: 1px solid #C5C9C7;
    padding-top: 64px;
}
.service-box .service-item a {
    padding: 16px 24px;
    width: 100%;
    justify-content: center;
}
.service-box .service-item a:hover {
    border: 1px solid #193a68;
    background: #193a68;
    color: white;
}
.service-box .service-item a:after {
    display: none;
}
.service-box .service-item a {
    margin-top: 24px;
}

/* VESTIGINGEN LAAG */

.vestigingen-laag .title-element {
    color: white;
    font-family: Merriweather;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    font-size: 32px;
    padding-left: 32px;
    position: relative;
    margin-bottom: 32px;
    text-align: center;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.vestigingen-overzicht {
    /* Ensures the div itself is scrollable */
    overflow-y: auto; 
    
    /* PREVENTS the scroll from passing to the main body */
    overscroll-behavior: contain;
}
.vestigingen-laag h3.title-element:before {
    height: 19px;
    top: 8px;
    position: absolute;
    left: 0;
}
.vestigingen-laag h3.title-element {
    font-size: 26px;
    padding-left: 24px;
}
.vestigingen-laag.font-Donker .title-element {
    color: #002240;
}

/* FOOTER */

.footer {
    padding: var(--small-padding);
    background-color: #1A3360;
    padding-bottom: 0;
    padding-top: 0;
}
.footer .flexbox-wrapper>div:first-of-type p, .footer .flexbox-wrapper>div:not(:first-of-type) p:first-of-type {
    color: var(--White---KBK, #FFF);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    padding: 8px 0px;
}
.footer .flexbox-wrapper>div:first-of-type p a, .footer .flexbox-wrapper>div:not(:first-of-type) p:first-of-type a {
    padding: 0;
    margin: 0;
    color: white;
    color: var(--White---KBK, #FFF);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    position: relative;
    z-index: 2;
}
.footer .flexbox-wrapper>div:not(:first-of-type) {
    margin-top: 0px;
    flex-basis: 100%;
    border-top: 1px solid rgba(255, 255, 255, 0.60);
    padding-top: 16px;
}
.footer .flexbox-wrapper>div.active a {
    display: block !important;
}
.footer .flexbox-wrapper>div.active a:last-child {
    margin-bottom: 16px;
}
.footer .flexbox-wrapper>div:not(:first-of-type) *, .footer .flexbox-wrapper>div * {
    margin-bottom: 8px;
    display: block;
    color: rgba(255, 255, 255, 0.60);
    font-family: "Zurich BT";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.footer .flexbox-wrapper>div p:after {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-down-white.svg) no-repeat;
    position: absolute;
    right: 0;
    top: 50%;
    transition: .3s ease-in-out;
    transform: translateY(-50%);
    background-position: center center;
}
.footer .flexbox-wrapper>div.active p:after {
    transform: translateY(-50%) rotate(180deg);
}
.footer .flexbox-wrapper>div {
    width: 100%;
}
.footer .flexbox-wrapper>div p {
    width: 100%;
    position: relative;
}
.footer-under {
    padding-top: 16px;
    background: #1a3360;
    padding-bottom: 72px;
}
.footer .flexbox-wrapper {
    border-bottom: 0;
}
.footer-under .flexbox-wrapper *, .footer-under .flexbox-wrapper a {
    color: rgba(255, 255, 255, 0.60);
    font-family: "Zurich BT";
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-decoration: none;
}
.footer-under .inner > .flexbox-wrapper > div p a {
    width: auto;
}
.footer-under .inner > .flexbox-wrapper {
    gap: 0;
}
.footer-under .inner > .flexbox-wrapper > div p, .footer-under .inner > .flexbox-wrapper > div a {
    width: 100%;
    margin-bottom: 16px;
}
.footer-under .flexbox-wrapper *, .footer-under .flexbox-wrapper a {
    color: rgba(255, 255, 255, 0.60);
    font-family: "Zurich BT";
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-decoration: none;
}
.footer-under ul.th-socials li a svg {
    width: 24px;
    opacity: .6;
}
.footer-under ul.th-socials li a {
    display: flex !important;
    align-items: center;
}
.footer-under ul.th-socials li {
    width: 48px;
    height: 48px;
    border: 1px solid #FFFFFF99;
    border-radius: 0;
    background: none;
}
.footer-under ul.th-socials {
    margin-top: 24px;
    display: flex !important;
    align-items: center;
    gap: 24px !important;
    margin-bottom: 48px;
}
.footer .flexbox-wrapper>div a {
    display: none !important;
}
.footer .flexbox-wrapper>div>p:first-of-type>a {
    display: block !important;
}
.blokken-items.vier--deling div.blok-item {
    flex-basis: 100%;
    width: 100%;
}

/*  REVIEWS LAAG */

section.reviews-laag span.image-box {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    left: 0;
    background-size: cover !important;
    background-position: center center !important;
}

section.reviews-laag {
    position: relative;
    padding: 80px 0px;
    min-height: 650px;
    display: flex;
    align-items: center;
}
.review-item h5 {
    color: var(--White---KBK, #FFF);
    font-family: Merriweather;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 56px;
}
.quote-box span.logo-box img {
    margin-bottom: 0;
}
.quote-box span.logo-box {
    background: none !important;
    display: flex;
    align-items: center;
    background-color: #ffffffd1 !important;
    padding: 8px;
    border-radius: 8px;
    width: fit-content;
    margin-bottom: 32px;
}
section.reviews-laag.font-Donker .review-item * {
    color: var(--font-blue);
}
section.reviews-laag .inner {
    position: relative;
    z-index: 2;
}
section.reviews-laag span.image-box:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: black;
    opacity: .4;
}
div.quote-box img {
    display: block;
    height: 35px;
    margin-left: 0;
    width: auto !important;
    margin-bottom: 32px;
}
.naam p.functie {
    opacity: .6;
}

.naam p {
    color: var(--White---KBK, #FFF);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}
.reviews-laag .owl-nav {
    margin-top: 56px;
    justify-content: space-between;
}

/*  4 DELING LAAG */

.blokken-items h4 {
    color: var(--White---KBK, #FFF);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 8px;
}
.blokken-items {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
}
.blokken-items p.small-title {
    color: var(--Dark-Grey---KBK, #C5C9C7);
    font-family: "Zurich BT";
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    margin-bottom: 8px;
}

section.font-Donker .blokken-items h4 {
    color: var(--font-dark);
}

/*  3 AFBEELDINGEN */

.three-images .image-box {
    height: 278px;
}
.three-images-slider {
    display: flex !important;
    flex-wrap: wrap;
}
.gap-box .three-images-slider {
    width: calc(100% + 24px);
align-items: center;
    gap: 56px;
    justify-content: flex-start;
}
.three-images-slider .owl-nav {
    margin-right: 24px;
}

/*  LOGO SLIDER */

.logo-slider .image-box img {
    height: 70px;
    width: auto;
    max-width: 160px;
}
.logo-slider .owl-stage {
    transition-timing-function: linear !important;
}

/*  ACTUEEL DETAIL */

.actueel-intro {
    background: linear-gradient(180deg, #1A3360 4.51%, #1899D6 95.49%);
    position: relative;
    padding: 32px 24px;
    padding-bottom: 172px;
}
section.single-actueel.no-header-image div.actueel-intro {
    padding-bottom: 48px;
}
section.single-actueel.no-header-image .actueel-content {
    padding-top: 48px;
}
.single-actueel section.breadcrumbs * {
    color: white;
}
.actueel-content ul, .actueel-content ol {
    margin-left: 20px;
}
.single-actueel section.breadcrumbs {
    padding: 0;
    margin-bottom: 32px;
}
.single-actueel a.back-btn:before {
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    background: white url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/arrow-right-blue.svg) no-repeat;
    background-position: center center;
    transform: rotate(180deg);
}
.single-actueel .tag:after {
    background: #1a5081;
}
.single-actueel h1:before {
    content: '';
    display: block;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    background-size: contain;
    background-position: center center;
    opacity: 1;
    width: 20px;
    height: 24px;
    top: 9px;
}

.single-actueel h1 {
    font-size: 32px;
    color: white;
    font-weight: 400;
    margin-bottom: 32px;
    font-family: 'Merriweather';
    line-height: 140%;
    position: relative;
    padding-left: 26px;
}
.actueel-meta div.nieuws-author {
    width: 100%;
    color: var(--White---KBK, #FFF);
}
.actueel-meta .nieuws-date {
    display: flex;
    align-items: center;
}
.actueel-meta .nieuws-date:after {
    content: '';
    display: block;
    width: 1px;
    height: 20px;
    background: white;
    margin-left: 16px;
}
.actueel-intro-image {
    height: 274px;
    display: block;
    width: calc(100% - 48px);
    margin-left: auto;
    margin-right: auto;
    background-size: cover !important;
    background-position: center center;
        margin-top: -102px;
    position: relative;
    margin-bottom: 72px;
}
.actueel-content .text-box h4 {
    font-size: 18px;
    font-weight: 400;
    line-height: 130%;
     font-family: 'Merriweather';
    line-height: 140%;
    margin-bottom: 32px;
}
.actueel-content .text-box h4 strong {
    font-size: 18px;
    font-weight: 900;
     font-family: 'Merriweather';
    line-height: 140%;
}
.actueel-content .text-box h3:before {
    content: '';
    display: block;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    background-size: contain;
    background-position: center center;
    opacity: 1;
    width: 11px;
    height: 14px;
    top: 6px;
}

.actueel-content .text-box h3 {
    font-size: 20px;
    font-weight: 400;
    line-height: 130%;
    margin-bottom: 32px;
    font-family: 'Merriweather';
    line-height: 140%;
    position: relative;
    padding-left: 18px;
}
.actueel-content .text-box h3 strong {
    font-size: 20px;
     font-family: 'Merriweather';
    line-height: 140%;
    font-weight: 900;
}
.actueel-content .text-box h2:before {
    content: '';
    display: block;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/slash-icon.svg) no-repeat;
    position: absolute;
    left: 0;
    background-size: contain;
    background-position: center center;
    opacity: 1;
    width: 13px;
    height: 17px;
    top: 7px;
}
.actueel-content .text-box h2 {
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 32px;
    font-family: 'Merriweather';
    line-height: 140%;
    padding-left: 20px;
    position: relative;
}
.actueel-content .text-box h2 strong {
    font-size: 24px;
    font-weight: 900;
     font-family: 'Merriweather';
    line-height: 140%;
}
.actueel-content .text-box p {
    line-height: 150%;
}
.actueel-content .one-image.image-box {
    margin: 0px 0px;
}
section.single-actueel {
    position: relative;
    padding-bottom: 72px;
}
.single-actueel section.post-type-slider.overzicht-laag {
    background: var(--Grey---KBK, #F2F2F2);
    padding: 72px 0px;
}

.actueel-content .quote-box .text-box {
    color: var(--Dark-Blue---KBK, #002240);
    font-family: Merriweather;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.quote-info .image-box.one-image .quote-meta * {
    color: #002240;
}
.actueel-content .quote-info {
    margin-top: 72px;
}
.quote-info .image-box.one-image {
    height: 56px;
    width: 131px;
    margin: 0;
    margin-bottom: 24px;
}
.actueel-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    color: white;
}
.quote-meta p:not(.titel) {
    opacity: .6;
}
.quote-meta p {
    color: #002240;
}
.actueel-content .quote-box.achtergrond-aan {
    background: #002240;
    padding: 24px;
    color: white;
}
.quote-box.achtergrond-aan * {
    color: white !important;
}
.single-actueel .image-box.two-images div.image-box {
    width: 100%;
    height: 278px;
}
.single-actueel .image-box.two-images {
    flex-wrap: wrap;
    gap: 88px;
    width: 100%;
    height: auto;
}
.actueel-content > div {
    width: 100%;
    flex-basis: 100%;
}
.image-box.grid-images div.image-box {
    flex-basis: calc(50% - 10px);
    width: calc(50% - 10px);
    height: 200px;
}

.image-box.grid-images {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.actueel-content {
    display: flex;
    flex-wrap: wrap;
    gap: 56px;
}
.single-actueel a.back-btn {
    color: var(--White---KBK, #FFF);
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 40px;
    margin-top: 48px;
}

/* HOVER STIJL */

.content-box .text-box p a:hover {
    color: #e63422;
}
.contact-content-laag.font-Licht .content-box .text-box p a:hover {
    color: #f2f2f2;
}

@media (max-width: 600px) {

.afb-tekst-laag .flexbox-wrapper.no-space .content-box {
    flex-basis: 100%;
    width: 100%;
}

.post-type-slider h2.title-element, .content-laag .content-box.Titel.knoppen.links.en.tekst.rechts .title-element, .afb-tekst-laag h2.title-element {
    font-size: 28px;
    padding-left: 24px;
}
.post-type-slider h2.title-element:before, .afb-tekst-laag h2.title-element:before, .content-laag .content-box.Titel.knoppen.links.en.tekst.rechts .title-element:before {
    width: 18px !important;
    height: 20px !important;
}
section.post-type-slider.overzicht-laag.Overal.ruimte.font-Licht .project-content h4 {
    color: #002240;
}
.person-contact a {
    padding-left: 0;
    font-size: 15px;
}
.footer .flexbox-wrapper>div>p:first-of-type>a {
    pointer-events: none;
}
section.afb-tekst-laag.Nergens.ruimte {
    padding: 56px 0px;
}

section.footer-above.custom-content h2, .footer-above h2 {
    padding-left: 24px;
}
section.footer-above.custom-content h2:before, .footer-above h2:before {
    left: 0;
}
.footer-above.custom-content .contentbox * {
    text-align: left !important;
}

body:not(.home) .header-layer .content-box h1 {
    display: block;
    padding-left: 0;
}
.page-id-1268 .header-layer .inner {
    padding: 0px 10px;
}
.cta-laag .person-box .image-box {
    height: 100px;
}
.person-box > .person-info {
    padding-top: 12px;
}
body:not(.home) .header-layer .content-box h1:before {
    position: relative;
    content: '';
    display: inline-block;
    background-size: contain;
    margin-right: 8px;
    top: 1px;
}

.footer .flexbox-wrapper>div.active > p:first-of-type > a {
        pointer-events: none;
    }

}

div#wpsl-wrap div.resultaten * {
    color: #002240;
}
div#wpsl-wrap div.resultaten {
    flex-basis: 100%;
    width: 100%;
    background: white;
    position: relative;
    padding: 32px;
}
div#wpsl-wrap {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.resultaten .wpsl-search.wpsl-clearfix.wpsl-geolocation-run {
    background: none;
    padding: 0;
    margin-bottom: 24px;
}
.resultaten .wpsl-search.wpsl-clearfix.wpsl-geolocation-run:before {
    content: 'Onze vestigingen';
    display: block;
    margin-bottom: 24px;
    font-family: 'Merriweather';
    font-size: 24px;
    line-height: 140%;
    font-weight: 400;
}
.resultaten .wpsl-input input {
    border-radius: 0 !important;
    padding: 8px 12px !important;
    height: 64px !important;
    border: 1px solid var(--Dark-Grey---KBK, #C5C9C7) !important;
    color: #002240 !important;
    font-family: 'Zurich BT';
    font-size: 16px;
}
.resultaten .wpsl-select-wrap {
    display: none !important;
}
.resultaten .wpsl-input {
    margin-bottom: 0 !important;
}
.resultaten .wpsl-input > div {
    display: none;
}
.resultaten .wpsl-search-btn-wrap input#wpsl-search-btn {
    margin: 0 !important;
    padding: 12px 24px;
    border-radius: 0;
    font-family: "Zurich BT";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140% !important;
    display: flex !important;
    gap: 16px;
    align-items: center;
    background: var(--btn-primary-bg);
    border: 1px solid var(--btn-primary-bg);
    height: auto;
    color: var(--font-light);
    position: relative;
}
div#wpsl-stores ul li {
    padding: 0 !important;
        border-bottom: 1px solid #C5C9C7 !important;
    padding-bottom: 24px !important;
    margin-bottom: 24px !important;
}
div#wpsl-stores ul li:last-of-type {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: none !important;
}
div#wpsl-gmap {
    margin: 0 !important;
}
.wpsl-input:before {
    content: '';
    display: block;
    position: absolute;
    width: 24px;
    height: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/search.svg) no-repeat;
    top: 50%;
    transform: translateY(-50%);
    left: 16px;
}
#wpsl-search-input {
    width: 100% !important;
    padding-left: 40px !important;
}
div#wpsl-stores ul li div.wpsl-store-location > p > strong:nth-of-type(1) {
    font-family: 'Merriweather';
    font-size: 18px;
    font-weight: 400;
    display: block;
    margin-bottom: 16px;
}
#wpsl-stores p.km {
    display: none;
}
#wpsl-wrap .hiddenInfo {
    display: none;
}
#wpsl-result-list li p {
    margin: 0;
}

.mobile-nav-menu li button.submenu-toggle {
    width: calc(100% - 80px);
    left: 40px;
    background-position: 100% 40%;
    z-index: 2;
}
.mobile-nav-menu li button.submenu-toggle.is-open {
    width: 40px;
    left: auto;
}
section.zoeken-laag .content-box div.text-box * {
    font-size: 18px;
    line-height: 150%;
}
section.zoeken-laag .content-box h1 {
    font-family: 'Merriweather';
    font-size: 32px;
    margin-bottom: 24px;
}
section.zoeken-laag .content-box {
    background: white;
    position: relative;
    padding: 24px;
}
section.zoeken-laag {
    background: #F2F2F2;
    position: relative;
    padding: 40px 0px;
}
.zoeken-box li.sf-field-submit input {
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0;
    top: 0;
    border: 0;
    background: none;
    color: transparent;
}
.zoeken-box form {
    position: relative;
}
.zoeken-box li.sf-field-submit {
    position: absolute;
    width: 48px;
    height: 48px;
    top: 50%;
    right: 8px;
    overflow: hidden;
    background: #002240 url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/12/search-white.svg) no-repeat;
    background-position: center center;
    transform: translateY(-50%);
}
.zoeken-box li.sf-field-search input {
    min-height: 80px;
}
.zoeken-box li.sf-field-search:before {
    top: 50%;
    transform: translateY(-50%);
}
.resultaten p.item-count {
    color: #013B67;
    font-size: 16px;
    margin-bottom: 24px;
}
.resultaten:before {
    content: 'Resultaten';
    display: block;
    margin-bottom: 24px;
    color: var(--Hulp-bij---Dark-blue, #013B67);
    font-family: Merriweather;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}
.resultaten .zoeken-item {
    background: #F1F3F5;
    transition: .1s ease-in-out;
    position: relative;
    margin-bottom: 16px;
}
.resultaten .zoeken-item:hover {
    background: #dddedf;
}
.resultaten .zoeken-item a {
    padding: 16px;
    display: block;
    color: #013B67;
    font-size: 18px;
    font-weight: 400;
}
.resultaten .zoeken-item a h4 {
    font-weight: 400;
    font-size: 18px;
}
.resultaten .zoeken-item a span {
    font-size: 14px;
}


@media (max-width: 800px) {

section.header-layer.with-video.with-image img.video-placeholder, body.home section.header-layer.with-video.with-image img.video-placeholder {
    height: 100% !important;
}

}

@media (max-width: 600px) {

.mobile-nav-menu li button.submenu-toggle {
    left: 0;
    background-position: calc(100% - 40px) 50%;
    z-index: 2;
    width: 100%;
    height: 100%;
    top: 0;
}
div#content > section:first-of-type .animate-on-scroll:first-of-type {
    opacity: 1;
    transform: initial;
}
.mobile-nav-menu li button.submenu-toggle.is-open {
    width: 170px;
    left: auto;
    height: 76px;
    right: 24px;
    background: url(https://www.kbkbouwgroep.nl/wp-content/uploads/2025/11/close.svg) no-repeat;
    background-position: calc(100% - 16px) 50%;
}
.mobile-menu.is-active .mobile-nav-menu ul.is-open li {
    opacity: 1;
}

}