/*
Theme Name:
Author URI: https://www.qstylez.nl/
Author: QStylez - Maaike Tol
Version: 1.0
*/

html {
    font-size: 16px;
    line-height: 24px;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    margin: 0;
}

body.home {
    width: 100% !important;
}

body.home .content {
    padding: 0 !important;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
video {
    display: inline-block;
    width: 100%;
}

audio:not([controls]) {
    display: none;
    height: 0;
}


/*Complianz cookiebanner*/

.cmplz-cookiebanner {
    font-family: "Archivo", sans-serif;
}


div#cmplz-document h2 {
    margin: 16px 0px;
}

div#cmplz-document h3 {
    margin: 16px 0px;
}

div#cmplz-document a {
    color: #666;
    text-decoration: underline;
}

div#cmplz-document a:hover {
    text-decoration: none;
}

/*Complianz cookiebanner END*/



/* Assistive text */

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    position: absolute !important;
    height: 1px;
    width: 1px;
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-weight: bold;
    height: auto;
    line-height: normal;
    padding: 15px 23px 14px;
    position: absolute;
    left: 5px;
    top: 5px;
    text-decoration: none;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar */
}



ul,
ol {
    padding: 0;
    margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
    margin-top: 0;
    margin-bottom: 0;
}


b,
strong {
    font-weight: 700;
}

p {
    margin: 0px 0px;
}

a {
    text-decoration: none;
    transition: .1s ease-in-out;
}

.home-link {
    position: relative;
    display: block;
    width: 100%;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: none;
    cursor: pointer;
}

button[disabled],
input[disabled] {
    cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
    padding: 0;
}

input[type="search"] {
    -webkit-appearance: textfield;
    padding-right: 2px;
    /* Don't cut off the webkit search cancel button */
    width: 100%;
}

input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    resize: none;
    vertical-align: top;
}

img {
    border-style: none;
}

img,
video {
    height: auto;
    max-width: 100%;
}

section:after,
article:after,
.clear:after,
#inner-header:after,
.row:after,
.social:after,
.site-info:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}

div#navbar {
    order: 4;
    flex-basis: 100%;
    width: 100%;
}

div#navbar ul {
    max-height: 0;
    overflow: hidden;
    transition: .3s ease-in-out;
}



/**
 * Start - Menu button - telefoon/ipad
 * ----------------------------------------------------------------------------
 */

.menu span {
    background: #132628;
    height: 2px;
}

.menu {
    width: 30px;
    height: 26px;
    order: 2;
    position: relative;
    align-self: center;
    margin-left: 10px;
}

header.site-header div.menu .close-btn span:nth-of-type(2) {
    transform: rotate(-25deg);
    top: 30%;
}

header.site-header div.menu .close-btn span:nth-of-type(1) {
    transform: rotate(25deg);
    top: 30%;
}

header.site-header div.menu {
    overflow: hidden;
}

header.site-header div.menu.open .close-btn {
    top: 0px;
}

header.site-header div.menu .close-btn {
    position: absolute;
    height: 36px;
    width: 37px;
    transition: .3s ease-in-out;
    top: 40px;
}

div#navbar.open ul {
    max-height: 1000px;
}

header.site-header div.menu.open .open-btn {
    top: -36px;
}

header.site-header div.menu .open-btn {
    position: absolute;
    top: 0;
    width: 30px;
    height: 26px;
    transition: .3s ease-in-out;
}

.menu span {
    position: absolute;
    width: 100%;
    transition: .3s ease-in-out;
}

.menu span:nth-of-type(1) {
    top: 2px;
}

.menu span:nth-of-type(2) {
    top: 12px;
}

.menu span:nth-of-type(3) {
    bottom: 2px;
}

.menu .close-btn span:nth-of-type(3) {
    color: #252422;
    bottom: 10px;
    background: none;
    font-size: 14px;
    line-height: 14px;
    font-weight: 700;
}


/**
 * Forms
 * ----------------------------------------------------------------------------
 */

.use-floating-validation-tip span.wpcf7-not-valid-tip {
    position: absolute;
    z-index: 100;
    padding: 0;
    border: 0;
    background: transparent;
    right: 10px;
    left: auto;
    top: 0px;
    font-size: 0.8rem;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
    display: none !important;
}

form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

form p {
    margin: 0;
    flex-basis: 100%;
    width: 100%;
    margin-bottom: 8px;
}

form input,
form textarea {
    width: 100%;
    border: 0;
    resize: none;
    font-size: 16px;
    padding: 10px;
}

form textarea {
    height: 130px;
}

.ajax-loader {
    position: absolute;
}

form input.wpcf7-form-control.wpcf7-submit {
    display: table;
    text-decoration: none;
    font-size: 16px;
    transition: .1s ease-in-out;
    width: auto;
    line-height: 2;
    margin-top: 0;
}

:focus {
    outline: 0;
    outline-color: transparent;
    outline-style: none;
}

/**
 * Algemeen
 * ----------------------------------------------------------------------------
 */

html {
    scroll-padding-top: 140px;
}

body {
    overflow-x: hidden;
    overflow-y: hidden;
}


.inner {
    width: 100%;
    max-width: 1728px;
    margin: 0 auto;
    padding: 0 24px;
    position: relative;
    font-family: "Roboto", sans-serif;
    font-weight: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    color: #666;
}

.flexbox-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.flexbox-wrapper.sb {
    justify-content: space-between;
}

.bg-img {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    display: block;
}


h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    font-family: "Archivo", sans-serif;
    color: black;
}

h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {}

h1 {
    font-size: 32px;
    line-height: 150%;
}

h2 {
    font-size: 22px;
    line-height: 150%;
}

h3 {
    font-size: 24px;
    line-height: 150%;
}

h4 {
    font-size: 24px;
    line-height: 150%;
}

h5 {
    font-size: 24px;
    line-height: 150%;
}

h6 {
    font-size: 20px;
    line-height: 150%;
}

.sub-content h1 {
    font-size: 32px;
    line-height: 150%;
}

.sub-content h2 {
    font-size: 22px;
    line-height: 150%;
}

.sub-content h3 {
    font-size: 24px;
    line-height: 150%;
}

.sub-content h4 {
    font-size: 24px;
    line-height: 150%;
}

.sub-content h5 {
    font-size: 24px;
    line-height: 150%;
}

.sub-content h6 {
    font-size: 20px;
    line-height: 150%;
}

a.btn,
.gform_button.button {
    padding: 11px 23px;
    display: block;
    width: fit-content;
    transition: 0.2s;
    font-weight: 400;
    cursor: pointer;
    line-height: 100%;
    border-radius: 16px;
    color: white;
    border: 1px solid #007AA4;
    background-color: #007AA4;
    font-size: 16px;
    line-height: 150% !important;
    position: relative;
    font-family: "Roboto", sans-serif;
}


a.btn:hover,
.gform_button.button:hover {
    background-color: #015d7c;
    border-color: #015d7c;
}

a.btn.ghost{
    color: black;
    background-color: transparent;
    border-color: #CDCDC2;
    &:hover{
        color: white;
        background-color: #007AA4;
        border-color: #007AA4;
    }
}

a.btn.white{
    background-color: white;
    border-color: white;
    color: #007AA4;
    &:hover{
        background-color: transparent;
        color: white;
    }
}

a.btn.ghost.white{
    border-color: white;
    background-color: transparent;
    color: white;
    &:hover{
        background-color: white;
        color: #007AA4;
    }
}


.breadcrumbs {    
    padding: 20px 0 0 !important;
}

#breadcrumbs {
    position: relative;
    z-index: 4;
    line-height: 16px;
    padding-bottom: 20px;
    border-bottom: 1px solid #002C5833;
}

#breadcrumbs * {
    color: #000000;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    text-align: left;
}

#breadcrumbs a {
    text-decoration: underline;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 16px;
    text-align: left;
}

#breadcrumbs a:hover {
    text-decoration: none
}

#breadcrumbs .delimiter {
    margin: 0 4px;
    /* background-image: url();
    width: 6px;
    height: 9px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: inline-block; */
}


.pretitel {
color: black;
    font-size: 12px;
    font-weight: 400;
    padding: 5px 14px;
    background-color: #F0EFEB;
    border-radius: 8px;
    margin-bottom: 16px;
    width: fit-content;
}



.accordion:first-of-type{
    border-top: 1px solid #CDCDC2;
}

.accordion {
    background-color: transparent;
    color: #000;
    cursor: pointer;
    padding: 24px 0;
    width: 100%;
    border: none;
    text-align: left;
    font-size: 16px;
    transition: 0.4s;
    font-weight: 400;
    font-family: "Roboto", sans-serif;
    position: relative;
    padding-right: 50px;
    min-height: 87px;
}

.accordion:after {
    content: url(https://werkenbij.keestolglas.nl/wp-content/themes/2024-05-theme/images/accordion-plus.svg);
    position: absolute;
    right: 0;
    top: 22px;
}

.accordion.active:after {
    content: url(https://werkenbij.keestolglas.nl/wp-content/themes/2024-05-theme/images/accordion-minus.svg);
}

.panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-out;
    border-bottom: 1px solid #CDCDC2;
    font-size: 16px;
}

.panel *:last-child {
    margin-bottom: 24px;
}

.panel a{
    color: black;
    text-decoration: underline;
    &:hover{
        text-decoration: none;
    }
}

.desktop {
    display: none;
}




/**
 * PAGE BUILDER CONTENT
 * ----------------------------------------------------------------------------
 */



.homepage-hero-keuzeblokken {
    display: flex;
    flex-wrap: wrap;
    max-width: 550px;
    justify-content: space-between;
    position: relative;
}

.homepage-hero-keuzeblokken>div {
    flex-basis: 32%;
    border-radius: 15px;
    background-color: gray;
    position: relative;
    padding: 16px 12px;
}

.homepage-hero-keuzeblokken::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: black;
    left: 0;
    top: 50%;
    position: absolute;
}

.homepage-hero-keuzeblokken>div:nth-of-type(-n + 3) {
    margin-bottom: 30px;
}

.homepage-hero-keuzeblokken>div>span {
    background-color: white;
    height: 100px;
    width: 100%;
    margin-bottom: 10px;
}

.homepage-hero-keuzeblokken>div>a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.content-builder ul {
    list-style-type: disc;
    margin-left: 18px;
    list-style-position: outside;
}

.content-builder ul li::marker {
    font-size: 20px;
}

.content-builder>section,
.sub.single>section {
    padding-top: 80px;
    padding-bottom: 80px;
}

.content-afbeelding .inner>.flexbox-wrapper,
.gecentreerde-content .inner>.flexbox-wrapper,
.twee-kolom-content .inner>.flexbox-wrapper {
    flex-direction: column;
}

.content-afbeelding .inner>.flexbox-wrapper>span {
    margin-top: 40px;
    width: 100%;
    background-size: cover;
    height: 350px;
    border-radius: 16px;
}

.twee-kolom-content .inner>.flexbox-wrapper>div:last-of-type {
    margin-top: 40px;
}

.content-afbeelding .inner>.flexbox-wrapper>.content h2,
.twee-kolom-content .inner>.flexbox-wrapper>div h2,
.gecentreerde-content .inner>.flexbox-wrapper>.content h2,
.blokken .inner h2,
.veelgestelde-vragen .tekst h2 {
    margin-bottom: 24px;
}

.content-afbeelding .inner>.flexbox-wrapper>.content .tekst,
.twee-kolom-content .inner>.flexbox-wrapper>div .tekst,
.gecentreerde-content .inner>.flexbox-wrapper>.content .tekst,
.veelgestelde-vragen .tekst {
    margin-bottom: 24px;
}

.content-afbeelding .inner>.flexbox-wrapper>.content .tekst>*:not(:last-child),
.twee-kolom-content .inner>.flexbox-wrapper>div .tekst>*:not(:last-child),
.gecentreerde-content .inner>.flexbox-wrapper>.content .tekst>*:not(:last-child) {
    margin-bottom: 24px;
}

.content-afbeelding .inner>.flexbox-wrapper>.content .flexbox-wrapper,
.twee-kolom-content .inner>.flexbox-wrapper>div .flexbox-wrapper,
.gecentreerde-content .inner>.flexbox-wrapper>.content .flexbox-wrapper {
    margin-bottom: 16px;
    align-items: center;
}

.content-afbeelding .inner>.flexbox-wrapper>.content .flexbox-wrapper span,
.twee-kolom-content .inner>.flexbox-wrapper>div .flexbox-wrapper span,
.gecentreerde-content .inner>.flexbox-wrapper>.content .flexbox-wrapper span {
    width: 40px;
    height: 40px;
    margin-right: 16px;
}


.content-afbeelding .inner>.flexbox-wrapper>.content .flexbox-wrapper p,
.twee-kolom-content .inner>.flexbox-wrapper>div .flexbox-wrapper p,
.gecentreerde-content .inner>.flexbox-wrapper>.content .flexbox-wrapper p {
    flex-basis: 50%;
    flex-grow: 1;
    font-size: 16px;
    line-height: 100%;
}

.content-afbeelding .inner>.flexbox-wrapper>.content>.btn,
.twee-kolom-content .inner>.flexbox-wrapper>div>.btn,
.gecentreerde-content .inner>.flexbox-wrapper>.content>.btn {
    margin-top: 32px;
}

.content-afbeelding .inner>.flexbox-wrapper>.content>span:last-of-type,
.twee-kolom-content .inner>.flexbox-wrapper>div>span:last-of-type,
.gecentreerde-content .inner>.flexbox-wrapper>.content>span:last-of-type {
    width: 287px;
    height: 147px;
    margin-top: 40px;
    background-size: cover;
}

.afbeelding-slider .tekst {
    margin-bottom: 40px;
}

.afbeelding-slider .owl-stage-outer {
    overflow: visible;
}

.afbeelding-slider .owl-stage-outer .owl-item img {
    max-width: calc(100vw - 56px);
    max-height: 550px;
}

.veelgestelde-vragen .categorien {
    background-color: white;
    box-shadow: 0px 4px 4px 0px #00000014;
    padding: 5px 6px;
    width: 100%;
}

.veelgestelde-vragen .categorien a {
    display: inline-block;
    width: 100%;
    color: black;
    line-height: 20px;
    background-color: white;
    text-align: left;
    font-size: 16px;
    font-weight: 700;
    border: none;
    padding: 10px 20px;
    margin-bottom: 0;
}

.veelgestelde-vragen .categorien a:hover {
    background-color: #149BD7;
    color: white;
    padding: 15px 20px;
}

.sub.faq.hulp .vragenlaag .vragen {
    margin-top: 0 !important;
}

.veelgestelde-vragen .vragen {
    margin-top: 32px;
}

.veelgestelde-vragen .vragen>h2 {
    color: #149BD7;
    margin-bottom: 30px;
}

.veelgestelde-vragen .vragen div.category>div:first-of-type .accordion {
    border-top: 1px solid #D9D9D9;
}

.veelgestelde-vragen .vragen .accordion:hover {
    background-color: #149bd71c;
}

.veelgestelde-vragen .vragen div div .accordion.active {
    padding-bottom: 8px;
    background-color: transparent !important;
}

.veelgestelde-vragen .vragen div div .panel p {
    margin-bottom: 24px;
}

.veelgestelde-vragen .categorien a.active {
    background-color: #149BD7;
    color: white;
    padding: 15px 20px;
}

.veelgestelde-vragen .vragen div.category {
    opacity: 0;
    visibility: hidden;
    height: 0;
    overflow: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0s linear 0.3s, height 0s linear 0.3s;
}

.veelgestelde-vragen .vragen div.category.active {
    opacity: 1;
    visibility: visible;
    height: auto;
    transition-delay: 0s;
}


.sub.single .hoofdlaag {
    padding-bottom: 80px;
}

.sub.single .hoofdlaag .flexbox-wrapper .content p:has(img) {
    margin: 30px 0;
}

.sub.single .hoofdlaag .flexbox-wrapper figure:has(figcaption) img {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

.sub.single .hoofdlaag .flexbox-wrapper figure:has(figcaption) {
    margin-top: 30px;
    width: 100% !important;
}

.sub.single .hoofdlaag .flexbox-wrapper figure figcaption {
    margin-bottom: 30px;
    font-size: 14px;
    line-height: 150%;
    padding-left: 8px;
    border-left: 2px solid black;
    margin-top: 4px;
}

.sub.single .hoofdlaag .flexbox-wrapper .content>*:not(:last-child) {
    margin-bottom: 16px;
}

.sub.single .hoofdlaag .flexbox-wrapper .content h3 {
    margin-top: 40px;
    margin-bottom: 20px !important;
    font-size: 20px;
    line-height: 140%;
}

.sub.single .hoofdlaag .flexbox-wrapper .content h2 {
    margin-bottom: 20px !important;
}

.sub.single .hoofdlaag .flexbox-wrapper .content blockquote {
    font-style: italic;
    font-size: 20px;
    line-height: 28px;
    padding-left: 20px;
    border-left: 2px solid black;
    margin: 30px 0 !important;
}

.sub.single .hoofdlaag .flexbox-wrapper .content a:not(.btn) {
    color: black;
    text-decoration: underline;
}

.sub.single .hoofdlaag .flexbox-wrapper .content a:hover {
    text-decoration: none;
}

.sub.single .hoofdlaag .flexbox-wrapper .content ul,
.sub.single .hoofdlaag .flexbox-wrapper .content ol {
    list-style-position: inside;
    margin: 20px 0 !important;
}

.sub.single .hoofdlaag .sidebar {
    margin-top: 40px;
    background-color: #F0EFEB;
    border-radius: 16px;
    padding: 24px 32px;
    width: 100%;
    max-width: 374px;
    height: fit-content;
}

.sub.single .hoofdlaag .sidebar .flexbox-wrapper span{
    width: 100px;
    height: 100px;
    flex-shrink: 0;
    position: relative;
}

.sub.single .hoofdlaag .sidebar .flexbox-wrapper span::before{
    content: "";
    background-image: url(https://werkenbij.keestolglas.nl/wp-content/uploads/2025/08/image-icon.svg);
    position: absolute;
    left: -14px;
    top: -14px;
    width: 28px;
    height: 28px;
}

.sub.single .hoofdlaag .sidebar .flexbox-wrapper div{
    flex-basis: 30%;
    flex-grow: 1;
    margin-left: 16px;
}

.sub.single .hoofdlaag .sidebar .flexbox-wrapper div p:first-of-type{
    font-size: 20px;
    line-height: 150%;
    color: black;
    margin-bottom: 8px;
}

.sub.single .hoofdlaag .sidebar .flexbox-wrapper div p:last-of-type{
    color: #95938C;
}

.sub.single .hoofdlaag .sidebar>p:first-of-type{
    margin: 24px 0;
    font-weight: 500;
    color: black;
    font-size: 20px;
    line-height: 150%;
}

.sub.single .hoofdlaag .flexbox-wrapper .content hr{
    margin: 32px 0!important;
    background-color: #E0E0DA;
    opacity: 0.4;
}

.sub.single .hoofdlaag .sidebar>a.btn{
    display: inline-block;
}

.sub.single .hoofdlaag .sidebar>a.btn:first-of-type{
    margin-right: 12px;
}

.sub.single .bekijk-ook {
    padding-top: 0;
}

.sub.single .bekijk-ook h2 {
    margin-bottom: 40px;
}

.blog-carousel .owl-stage-outer {
    overflow: visible;
}

.sub.single .bekijk-ook h2 {
    margin-bottom: 40px;
}
/* 
.blog:not(.content-builder) {
    width: 330px;
    position: relative;
}

.blog:not(.content-builder)>a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.blog:not(.content-builder):hover .thumb span {
    transform: scale(1.2);
}

.blog:not(.content-builder) .content {
    padding: 24px;
    background-color: white;
}

.blog:not(.content-builder) .content .categorie {
    margin-right: 17px;
}

.blog:not(.content-builder) .content .titel {
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-size: 28px;
    line-height: 110%;
    margin-top: 24px;
}

.blog:not(.content-builder) .content .excerpt {
    height: 78px;
    overflow: hidden;
    font-size: 16px;
    margin: 16px 0 24px;
}

.blog:not(.content-builder) .thumb {
    overflow: hidden;
    height: 200px;
    width: 100%;
}

.blog:not(.content-builder) .thumb span {
    height: 100%;
    width: 100%;
    background-size: cover;
    transition: 0.4s;
} */

.reviewlaag .tekst {
    margin-bottom: 24px;
}

.reviewlaag .review-carousel .owl-stage-outer {
    overflow: visible;
}

.reviewlaag .review-carousel .owl-item>div {
    background-color: white;
    padding: 24px;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.05);
}

.reviewlaag .review-carousel .owl-item .sterren {
    margin-bottom: 24px;
}

.reviewlaag .review-carousel .owl-item .sterren span {
    display: inline-block;
    width: 20px;
    height: 20px;
}

.reviewlaag .review-carousel .owl-item>div>p {
    font-size: 18px;
}

.reviewlaag .review-carousel .owl-item>div>p:last-child {
    margin-top: 32px;
    font-size: 16px;
}

.reviewlaag .inner>a.btn {
    margin-top: 40px;
}

.content-afbeelding.reverse.phone .flexbox-wrapper>.content {
    order: 1;
}

.content-afbeelding.reverse.phone .flexbox-wrapper>span {
    margin-top: 0;
    margin-bottom: 40px;
}


/**
 * Navbar
 * ----------------------------------------------------------------------------
 */

.top-header {
    background-color: #EEF0EB;
    height: 40px;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 6px 0;
    z-index: 999;
}



.top-header .inner a {
    text-decoration: underline;
    color: #293241;
    font-size: 18px;
    line-height: 100%;
}


.site-header .bg-img.mobile{
    width: 48px;
    height: 48px;
    margin-left: auto;
    position: relative;
    transition: 0.3s;
    &:hover{
        opacity: 0.5;
    }
}


.site-header .bg-img.mobile a{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



.site-header {
    height: 80px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    padding: 15px 0;
    z-index: 99999;
    background: white !important;
    box-shadow: 0px 4px 4px 0px #A0A0A026;
    transition: 0.2s ease-in-out;
}

.hfeed.site {
    margin-top: 80px;
}

.hfeed.site:has(.has-topheader) {
    margin-top: 120px;
}

.hfeed.site:has(.has-topheader.top-header-desktop) {
    margin-top: 80px;
}

.site-header.has-topheader {
    top: 40px;
}

.site-header.has-topheader.top-header-desktop {
    top: 0;
}

.site-header .inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0;
}

.site-header .inner .home-link {
    width: 158px;
    height: 50px;
    margin-left: 24px;
}

.site-header .inner .menu {
    overflow: hidden;
    width: 48px;
    height: 48px;
    margin-right: 24px;
    position: relative;
    bottom: 4px;
    cursor: pointer;
    top: 1px;
    border-radius: 12px;
    background: #007AA4;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

header.site-header div.menu .open-btn {
    width: 22px;
    height: 15px;
    position: relative;
    transition: 0.3s ease-in-out;
}

.menu span {
    background: white;
}

header.site-header div.menu .open-btn span:nth-of-type(1) {
    top: 0;
}

header.site-header div.menu .open-btn span:nth-of-type(2) {
    top: 6px;
}

header.site-header div.menu .open-btn span:nth-of-type(3) {
    top: 12px;
}

div#navbar {
    order: 4;
    flex-basis: 100%;
    width: 100%;
    overflow: hidden;
    transition: 0.5s;
    height: 0;
    position: relative;
    top: 10px;
    overflow: visible;
}

div#navbar.open {
    padding: 32px 0 30px;
    height: calc(100vh - 75px);
    max-height: unset;
    background-color: white;
    border-top: 0;
    margin: unset;
    box-shadow: inset 0px 4px 4px 0px #A0A0A026;
}

div#navbar.open .nav-menu {
    max-height: calc(100vh - 240px) !important;
    overflow-y: scroll;
}

div#navbar .nav-menu>li {
    font-weight: bold;
    padding-bottom: 20px;
    margin: 0 24px 16px;
    list-style-type: none;
}


div#navbar ul li {
    padding-bottom: 16px;
    margin-bottom: 16px;
}

div#navbar ul.nav-menu>li>a{
    font-size: 18px;
    line-height: 150%;
}

div#navbar ul li a {
    color: #000;
    display: block;
    width: 100%;
    height: 100%;
    transition: 0.3s;
    font-size: 16px;
    line-height: 16px;
    position: relative;
    font-weight: 400;
}

div#navbar ul li a:hover {
    color: #a3a3a3 !important;
}

.nav-menu li.menu-item-has-children {
    position: relative;
}

.nav-menu .sub-menu {
    display: none;
}

.nav-menu .sub-menu li {
    border-bottom: 0;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 20px;
    border-bottom: 1px solid #DAE1EFB2;
}

.nav-menu .sub-menu li:first-of-type {
    border-top: 1px solid #DAE1EFB2;
    margin-top: 20px;
    border-bottom: 0;
}

.nav-menu .sub-menu li:not(:first-of-type) {
    border-top: 1px solid #DAE1EFB2;
    margin-top: 15px;
}

.nav-menu .sub-menu li:last-of-type {
    border-bottom: 0;
    padding-bottom: 0;
}



.site-header .btn.navbar-mobile {
    width: calc(100% - 48px);
    text-align: center;
    margin: 0 24px;
    margin-top: 32px;
    display: none;
}

.site-header .navbar.open .btn.navbar-mobile {
    display: block;
}

.site-header .navbar-desktop {
    display: none;
}




/* Keyframes for fade-in effect */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Keyframes for fade-out effect */
@keyframes fadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

.navbar a {
    animation: fadeOut 0.3s ease-in-out forwards;
}

.navbar.open a {
    opacity: 0;
    animation: fadeIn 0.5s ease-in-out forwards;
}


.site-header a.btn.desktop {
    display: none;
}


div#navbar ul li ul li {
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0;
}

div#navbar ul li.menu-item-has-children>a::after {
    content: url(https://85.10.154.84/~keesglas/wp-content/themes/2024-05-theme/images/chevron-down-b.svg) !important;
    display: inline-block;
    position: absolute;
    right: 0;
    transition: 0.2s;
}

div#navbar ul li.menu-item-has-children.open>a::after {
    transform: rotateX(180deg);
}

.navbar-btns-desktop {
    display: none;
}

/**
 * Scrolled
 * ----------------------------------------------------------------------------
 */

.site-header.scrolled .inner .home-link {
    background-image: url() !important;
}

.site-header.scrolled {
    background: white;
}

.site-header.scrolled div#navbar.open {
    background-color: white;
}

.site-header.scrolled .menu span {
    background: black;
}

.site-header.scrolled div.menu .open-btn span:nth-of-type(4) {
    color: black;
}

.site-header.scrolled .menu .close-btn span:nth-of-type(3) {
    color: black;
    background: transparent;
}

.site-header.scrolled div#navbar ul li a {
    color: black;
}

.site-header.scrolled div#navbar .nav-menu>li {
    border-bottom: 1px solid #00000038;
}

.site-header.scrolled div#navbar ul li a::after {
    content: url();
}

.site-header.scrolled div#navbar ul li.menu-item-has-children>a::after {
    content: url() !important;
}

.site-header.scrolled .nav-menu .sub-menu li:first-of-type {
    border-top: 1px solid #00000038;
}

/**
 * Footer
 * ----------------------------------------------------------------------------
 */


.footer {
    padding-top: 60px;
    padding-bottom: 32px;
    background-color: #F0EFEB;
}

.footer .flexbox-wrapper>div:first-of-type{
    flex-basis: 100%;
    border-bottom: 1px solid #CDCDC2;
}

.footer .flexbox-wrapper>div:first-of-type span {
    width: 259.283px;
    height: 64px;
    margin-bottom: 20px;
    background-size: cover;
}

.footer .flexbox-wrapper>div:first-of-type p {
    font-size: 18px;
    font-weight: bold;
    line-height: 150%;
    margin-bottom: 16px;
    color: black;
}


.footer .flexbox-wrapper>div:not(:first-of-type) {
    margin-top: 32px;
    flex-basis: 100%;
}

.footer .flexbox-wrapper>div:not(:first-of-type) * {
    font-size: 16px;
    line-height: 22px;
    display: block;
    color: #95938C;
}

.footer .flexbox-wrapper>div a:hover {
    text-decoration: underline;
}

.footer .flexbox-wrapper>div:last-child span{
    width: 72px;
    height: 72px;
    display: inline-block;
    margin-right: 10px;
}

.under-footer {
    padding: 20px 0;
    background-color: #F0EFEB;
}

.under-footer .flexbox-wrapper {
    flex-direction: column;
    gap: 16px;
}

.under-footer .flexbox-wrapper>div:last-child p {
    color: #00000080;
    font-size: 14px;
    line-height: 14px;
}

.under-footer .flexbox-wrapper>div:first-child{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.under-footer .flexbox-wrapper>div:first-child * {
    color: black;
    font-size: 14px;
    line-height: 18px;
    &:hover {
        text-decoration: underline;
    }
}

/**
 * Home
 * ----------------------------------------------------------------------------
 */
.homepage .hoofdlaag {
    height: calc(100vh - 130px);
    position: relative;
}


.homepage .hoofdlaag::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%);
    z-index: 3;
}

.homepage .hoofdlaag .inner{
    height: 100%;
    z-index: 4;
}

.homepage .hoofdlaag .flexbox-wrapper .content-rechts{
    display: none;
}

.homepage .hoofdlaag .inner .flexbox-wrapper{
    height: 100%;
    justify-content: flex-end;
}

.homepage .hoofdlaag .inner .tekst{
    margin-bottom: 40px!important;
}

.homepage .hoofdlaag .inner h1{
    color: white;
}

.homepage .hoofdlaag .flexbox-wrapper .content-links>a.btn:nth-of-type(2){
    margin-top: 16px;
}


/**
 * Subs
 * ----------------------------------------------------------------------------
 */

.page-id-839 .content-en-sidebar{
    padding-bottom: 0!important;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper{
    margin-top: 40px;
    gap: 40px;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature{
    flex-basis: 100%;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>span{
    width: 100% !important;
    margin-top: 0;
    height: 210px !important;
    border-radius: 16px 16px 0 0;
    background-size: cover;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>div{
    border-radius: 0 0 16px 16px;
    background: #F0EFEB;
    padding: 24px;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>div .pretitel{
    background-color: #E0E0DA;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>div ul{
    margin-top: 24px;
    margin-bottom: 24px;
}

.page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>div ul li::marker{
    color: #FF5100;
}

 .content-builder .twee-kolom-content>video {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.content-builder .twee-kolom-content {
    position: relative;
}




 .sidebar {
    margin-top: 40px;
    background-color: #F0EFEB;
    border-radius: 16px;
    padding: 24px 32px;
    width: 100%;
    max-width: 374px;
    height: fit-content;
}

 .sidebar .flexbox-wrapper span{
    width: 100px;
    height: 100px;
    flex-shrink: 0;
    position: relative;
}

 .sidebar .flexbox-wrapper span::before{
    content: "";
    background-image: url(https://85.10.154.84/~keesglas/wp-content/uploads/2025/08/image-icon.svg);
    position: absolute;
    left: -14px;
    top: -14px;
    width: 28px;
    height: 28px;
}

 .sidebar .flexbox-wrapper div{
    flex-basis: 30%;
    flex-grow: 1;
    margin-left: 16px;
}

 .sidebar .flexbox-wrapper div p:first-of-type{
    font-size: 20px;
    line-height: 150%;
    color: black;
    margin-bottom: 8px;
}

 .sidebar .flexbox-wrapper div p:last-of-type{
    color: #666666;
}

 .sidebar>p:first-of-type{
    margin: 24px 0;
    font-weight: 500;
    color: black;
    font-size: 20px;
    line-height: 150%;
}

.sidebar>.flexbox-wrapper:last-child{
    gap: 16px;
}

.galerijlaag .flexbox-wrapper {
    display: flex !important;
    gap: 16px;
}

.galerijlaag .flexbox-wrapper>span {
    height: 200px;
    flex-basis: 45%;
    flex-grow: 1;
    background-size: cover;
    transition: 0.6s;
    position: relative;

    &:hover {
        opacity: 0.6;
    }
}

.galerijlaag.desktop .flexbox-wrapper.desktop>span:hover {
    opacity: unset;
}

.galerijlaag .flexbox-wrapper span a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.galerijlaag .flexbox-wrapper>span:first-of-type {
    flex-basis: 100%;
    border-radius: 16px;
}

.galerijlaag .flexbox-wrapper>span:nth-child(n + 2) {
    flex-basis: 31%;
    border-radius: 16px;
    height: 150px;
}

.galerijlaag .flexbox-wrapper span:nth-child(n + 4) {
    display: none;
}

.galerijlaag .flexbox-wrapper span:not(:nth-child(3)) span {
    display: none;
}

.galerijlaag .flexbox-wrapper span:nth-child(3) {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.galerijlaag .flexbox-wrapper span:nth-child(3)::before {
    content: "";
    background-color: rgba(0, 0, 0, 0.623);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 16px;
}

.galerijlaag .flexbox-wrapper span:nth-child(3) span {
    font-size: 40px;
    color: white;
    z-index: 3;
    position: relative;
    font-weight: bold;
}

.projectpage .bekijk-ook-projecten{
    background-color: #F0EFEB;
}

.bekijk-ook-projecten .inner>h2{
    margin-bottom: 40px;
}

.bekijk-ook-projecten .flexbox-wrapper{
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.bekijk-ook-projecten .flexbox-wrapper>div, .search-filter-results .flexbox-wrapper .project{
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    height: 420px;
    flex-basis: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    padding: 24px;
}

.bekijk-ook-projecten .flexbox-wrapper>div>span, .search-filter-results .flexbox-wrapper .project span{
    height: 100%!important;
    width: 100%!important;
    margin: 0!important;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.bekijk-ook-projecten .flexbox-wrapper>div>span::before, .search-filter-results .flexbox-wrapper .project span::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.20) 70%), #66666670;
    transition: 0.4s;
}

.bekijk-ook-projecten .flexbox-wrapper>div>div h5, .search-filter-results .flexbox-wrapper .project div h5{
    position: relative;
    color: white;
    margin-bottom: 24px;
    &:hover{
        text-decoration: underline;
    }
}

.bekijk-ook-projecten .inner>a.btn, .bekijk-ook-producten .inner .flexbox-wrapper>a.btn{
    margin-top: 40px;
}


.projectpage .content-en-sidebar h3{
    margin-bottom: 24px;
}

.projectpage .content-en-sidebar .sidebar{
    padding: 0;
    background-color: transparent;
    max-width: 574px;
}

.projectpage .content-en-sidebar .sidebar>div{
    padding-bottom: 14px;
    border-bottom: 1px solid #0F1B641A;
}

.projectpage .content-en-sidebar .sidebar>div h5{
    margin-bottom: 8px;
}

.projectpage .content-en-sidebar .sidebar>div:not(:last-child){
    margin-bottom: 24px;
}

.projectpage .quotelaag .inner, .content-builder .quotelaag .inner{
    text-align: center;
    max-width: 1300px;
}

.projectpage .quotelaag .inner>div, .content-builder .quotelaag .owl-item>div>div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 32px;
}

.projectpage .quotelaag .inner>div>span, .content-builder .quotelaag .owl-item>div>div>span{
    width: 70px;
    height: 84px;
    margin-left: 20px;
}

.projectpage .quotelaag .inner>div>div, .content-builder .quotelaag .owl-item>div>div>div{
    padding-right: 20px;
    border-right: 1px solid black;
}

.projectpage .quotelaag .inner>div>div, .content-builder .quotelaag .owl-item>div>div>div{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.projectpage .quotelaag .inner>div>div>span, .content-builder .quotelaag .owl-item>div>div>div>span{
    height: 56px;
    width: 56px;
    border-radius: 100%;
    background-size: cover;
}

.projectpage .quotelaag .inner>div>div>div, .content-builder .quotelaag .owl-item>div>div>div>div{
    color: black;
    text-align: left;
    margin-left: 20px;
    font-size: 16px;
    line-height: 150%;
}

.productpage .uspslaag, .productpage .content-afbeelding:nth-child(4), .productpage .contactblok, .productpage .veelgestelde-vragen, .projectpage .content-en-sidebar, .projectpage .galerijlaag, .projectpage .quotelaag{
    padding-bottom: 0!important;
}

.contactblok .flexbox-wrapper .content{
    background-color: #007AA4;
    padding: 48px 24px;
    border-radius: 16px;
    color: white;
}

.contactblok .flexbox-wrapper .content h2{
    color: white;
    margin-bottom: 8px;
}

.contactblok .flexbox-wrapper .content .flexbox-wrapper{
    flex-direction: column;
    gap: 16px;
    margin-top: 24px;
}

.tijdlijn .content-rechts .tekst>div, .tijdlijn .content .tekst>div{
    padding-left: 75px;
    position: relative;
}

.tijdlijn .content-rechts .tekst>div:not(:last-child)::before, .tijdlijn .content .tekst>div:not(:last-child)::before{
    content: "";
    position: absolute;
    left: 17px;
    bottom: 0;
    width: 2px;
    height: calc(100% - 55px);
    background-color: black;
}

.tijdlijn .content-rechts .tekst>div::after, .tijdlijn .content .tekst>div::after{
    content: "";
    background-image: url(http://werkenbij.keestolglas.nl/wp-content/uploads/2025/08/logo-png.png);
    width: 34.923px;
    height: 41.299px;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.tijdlijn .content-rechts .tekst>div h5, .tijdlijn .content .tekst>div h5{
    margin-bottom: 16px;
}

.blokken .flexbox-wrapper.teamleden>div>div{
    position: absolute;
    bottom: 0;
    left: 24px;
    transition: 0.5s;
    opacity: 0;
}

.blokken .flexbox-wrapper.teamleden>div>div>*{
    color: white;
}

.blokken .flexbox-wrapper.teamleden>div:hover>div{
    position: absolute;
    bottom: 24px;
    transition: 0.5s;
    opacity: 1;
}

.blokken .flexbox-wrapper.teamleden {
    gap: 24px;
    margin-top: 40px;
}

.blokken .flexbox-wrapper.teamleden>div {
    flex-basis: 100%;
    border-radius: 16px;
    height: 350px;
    position: relative;
    overflow: hidden;
}

.blokken .flexbox-wrapper.teamleden>div>span{
    height: 100%;
    width: 100%;
    background-size: cover;
}

.afbeeldinglaag .inner span{
    width: 100%;
    height: 266px;
    border-radius: 16px;
    background-size: cover;
}

.veelgestelde-vragen .inner h2{
    text-align: center;
    margin-bottom: 40px;
}

.site-header .inner .menu{
    display: none;
}

.site-header .navbar-desktop {
    order: 2;
    display: block;
    margin-right: 24px;
    height: fit-content;
}

.site-header .inner{
    align-items: center;
}

.herolaag{
    position: relative;
}

.herolaag::before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #0082CA 0%, #C028B9 20%, #E1251B 40%, #F03B0E 60%, #FFD600 80%, #00AE42 100%);
    z-index: 3;
}

.sub-content .herolaag>span::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgb(0 0 0 / 38%) 0%, rgba(0, 0, 0, 0.15) 100%);
}

.herolaag>span{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
}

.herolaag>span::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 100%);
}

.herolaag h1{
    color: white;
    margin-bottom: 32px;
    text-align: center;
}

.herolaag a.btn{
    margin: 32px auto 0;
}

.herolaag .flexbox-wrapper{
    gap: 14px;
    align-items: center;
    justify-content: center;
}

.herolaag .flexbox-wrapper .usp{
    color: #131313;
    font-size: 16px;
    line-height: 150%;
    padding: 12px 24px 12px 40px;
    background-color: white;
    border-radius: 16px;
    position: relative;
}

.herolaag .flexbox-wrapper .usp::before{
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 100%;
    background-color: #FF5100;
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
}

.single-vacature .content-afbeelding{
    background-color: #F0EFEB;
}

.single-vacature .content-afbeelding .content .tekst{
    margin-bottom: 0!important;
}

.single-vacature .content-afbeelding .flexbox-wrapper>span{
    border-radius: 16px;
}

.single-vacature .blokkenlaag{
    padding-top: 0!important;
    background-color: #F0EFEB;
}

.single-vacature .formulierlaag .inner>div{
    border-radius: 16px;
    background-color: #F0EFEB;
    padding: 32px;
    max-width: 1152px;
    margin: 0 auto;
}

.single-vacature .formulierlaag .inner>div h2{
    margin-bottom: 32px;
}

.blokkenlaag .stappen-carousel{
    margin-top: 40px;
}

.blokkenlaag .stappen-carousel .stap, .blokkenlaag .stappen-animatie .stap{
    width: 320px;
    border-radius: 16px;
    border: 2px solid #F0EFEB;
    background: #FFF;
    padding: 32px;
}

.blokkenlaag .stappen-carousel .stap .number, .blokkenlaag .stappen-animatie .stap .number{
    font-size: 14px;
    font-weight: bold;
    width: 36px;
    height: 36px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    background-color: #00A5D9;
    border-radius: 8px;
    margin-bottom: 14px;
    color: white;
}

.blokkenlaag .stappen-carousel .stap p:nth-child(2), .blokkenlaag .stappen-animatie .stap p:nth-child(2){
    font-size: 24px;
    font-family: "Archivo", sans-serif;
    color: black;
    margin-bottom: 32px;
}

.blokkenlaag .stappen-carousel .owl-dots .owl-dot{
    background-color: #007aa45e !important;
}

.blokkenlaag .stappen-carousel .owl-dots .owl-dot.active{
    background-color: #007AA4 !important;
}

.blokkenlaag .stappen-carousel .owl-item:nth-child(2) .stap .number, .blokkenlaag .stappen-animatie .stap:nth-child(2) .number{
    background-color: #C028B9;
}

.blokkenlaag .stappen-carousel .owl-item:nth-child(3) .stap .number, .blokkenlaag .stappen-animatie .stap:nth-child(3) .number{
    background-color: #FF5100;
}

.blokkenlaag .stappen-carousel .owl-item:nth-child(4) .stap .number, .blokkenlaag .stappen-animatie .stap:nth-child(4) .number{
    background-color: #FFD600;
}

/**
 * Owl Carousel - Nav
 * ----------------------------------------------------------------------------
 */
.owl-nav {
    display: block;
}

.owl-nav .owl-prev {
    width: 48px;
    height: 48px;
    border-radius: 4px;
    position: absolute;
    background: transparent url(https://werkenbij.keestolglas.nl/wp-content/themes/2024-05-theme/images/owl-nav-dark.svg) no-repeat !important;
    background-position: center center !important;
    transform: rotateY(180deg);
    top: calc(50% - 24px);
    left: -10px;
    transition: 0.2s;
}

.owl-nav .disabled {
    opacity: 0;
}

.owl-nav .owl-next {
    width: 48px;
    height: 48px;
    border-radius: 4px;
    position: absolute;
    background: transparent url(https://werkenbij.keestolglas.nl/wp-content/themes/2024-05-theme/images/owl-nav-dark.svg) no-repeat !important;
    background-position: center center !important;
    top: calc(50% - 24px);
    right: -10px;
    transition: 0.2s;
}

.owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {
    opacity: 0.7;
}

/**
 * Owl Carousel - Dots
 * ----------------------------------------------------------------------------
 */
.owl-dots {
    display: flex;
    flex-wrap: wrap;
    margin-top: 32px;
}

.owl-dots .owl-dot {
    height: 3px !important;
    background-color: #FFFFFF33 !important;
    flex-grow: 1;
}

.owl-dots .owl-dot.active {
    background-color: #FFFFFF !important;
}

.quotelaag .owl-dots{
    gap: 8px;
    justify-content: center;
}

.quotelaag .owl-dots .owl-dot{
    background-color: #00000031!important;
    width: 8px !important;
    height: 8px !important;
    flex-grow: unset !important;
    border-radius: 100%;
}

.quotelaag .owl-dots .owl-dot.active{
    background-color: #000000 !important;
}

/**
 * Blogs - filters
 * ----------------------------------------------------------------------------
 */

.searchandfilter>ul{
    margin-left: 0;
}

.searchandfilter>ul>li {
    padding: 0;
    margin-bottom: 22px;
}

.searchandfilter ul li ul::-webkit-scrollbar {
    display: none;
}

.sub.projecten .filters>form {
    justify-content: center;
}

.searchandfilter ul li ul li {
    height: fit-content;
    position: relative;
    cursor: pointer;
    flex-basis: fit-content;
    transition: 0.2s;
    margin-right: 8px;
    padding: 0;
    display: inline-block;
    width: fit-content;
    margin-bottom: 8px;
}

.searchandfilter ul li ul li:hover label {
    color: white;
    background-color: #007AA4;
    border-color: #007AA4;
}

.searchandfilter ul li ul li input {
    appearance: none;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.searchandfilter ul li ul li label {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%;
    text-align: left;
    color: #252422;
    text-decoration: none;
    padding: 11px 23px !important;
    background-color: white;
    border: 1px solid white;
    border-radius: 16px;
    transition: 0.2s;
}

.searchandfilter ul li ul li.sf-option-active label {
    color: white;
    background-color: #007AA4;
    border-color: #007AA4;
}

.searchandfilter .sf-input-select{
    padding: 12px 24px;
    border: none;
    border-radius: 16px;
    border-right: 24px solid transparent;
    min-width: unset!important;
    width: fit-content;
    font-size: 16px;
    line-height: 150%;
    width: calc(100vw - 48px);
}

/**
 * Blogs - pagination
 * ----------------------------------------------------------------------------
 */
.pagination {
    position: relative;
    width: 100%;
    flex-basis: 100%;
    margin-top: 30px;
}

.pagination .wp-pagenavi {
    width: 200px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 80px;
}

.pagination .wp-pagenavi::before {
    content: "";
    background-color: #00000033;
    width: 35%;
    height: 1px;
    display: block;
    left: 0;
    position: absolute;
    top: 14px;
}

.pagination .wp-pagenavi::after {
    content: "";
    background-color: #00000033;
    width: 35%;
    height: 1px;
    display: block;
    right: 0;
    position: absolute;
    top: 14px;
}

.pagination .pages,
.pagination .previouspostslink,
.pagination .first,
.pagination .last {
    display: none !important;
}

.pagination .current,
.pagination .extend {
    border: none;
    padding: 0;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 18px !important;
    width: fit-content;
    margin: 0 !important;
    color: #313132;
    display: inline-block !important;
    padding: 0;
    margin: 0 2px !important;
}

.pagination .page {
    width: fit-content;
    border: none;
    margin: 0 !important;
    color: #313132;
    display: inline-block !important;
    border-bottom: 1px solid #313132;
    padding: 0;
    margin: 0 2px !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 18px !important;
}

.pagination .nextpostslink {
    color: #313132;
    font-weight: 700;
    text-decoration-line: underline;
    border: none;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto !important;
    width: fit-content;
    display: block;
    max-width: 400px;
    font-size: 18px !important;
    line-height: 18px !important;
}

/**
 * Contact
 * ----------------------------------------------------------------------------
 */

 

.content-builder.contact .herolaag h1, .content-builder.contact #breadcrumbs *, .content-builder.offerte-aanvragen .herolaag h1, .content-builder.offerte-aanvragen #breadcrumbs *, .content-builder.bedankt .herolaag h1, .content-builder.bedankt #breadcrumbs *, .blogpage #breadcrumbs *{
    color: black;
}

.content-builder.contact #breadcrumbs .delimiter, .content-builder.offerte-aanvragen #breadcrumbs .delimiter, .content-builder.bedankt #breadcrumbs .delimiter, .blogpage #breadcrumbs .delimiter{
    background-image: url(https://85.10.154.84/~keesglas/wp-content/uploads/2025/08/chevron-right-dark.svg);
}

.content-builder.contact .twee-kolom-content .content-rechts, .content-builder.offerte-aanvragen .twee-kolom-content .content-rechts{
    order: -1;
    margin-top: 0!important;
    margin-bottom: 48px;
    border-radius: 16px;
    background: #F0EFEB;
    padding: 24px;
}

.content-builder.contact .twee-kolom-content .content-links .tekst, .content-builder.offerte-aanvragen .twee-kolom-content .content-links .tekst{
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 24px;
}

.content-builder.contact .twee-kolom-content .content-links .tekst>div, .content-builder.offerte-aanvragen .twee-kolom-content .content-links .tekst>div{
    border-radius: 16px;
    border: 1px solid #CDCDC2;
    background: #FFF;
    padding: 24px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 16px;
    color: black;
    margin-bottom: 0;
}

.content-builder.contact .twee-kolom-content .content-rechts .tekst, .content-builder.offerte-aanvragen .twee-kolom-content .content-rechts .tekst{
    margin-bottom: 0!important;
}

/**
 * Gravity Forms
 * ----------------------------------------------------------------------------
 */

 .gform_wrapper.gravity-theme {
    margin-bottom: 0px !important;
}


.gform_wrapper.gravity-theme .gform_required_legend,
.gform_wrapper.gravity-theme .gform_fileupload_rules {
    display: none !important;
}

.gform_wrapper.gravity-theme .gfield_required {
    color: black !important;
    font-size: 16px !important;
}

.gform_wrapper.gravity-theme .gfield_label {
    font-weight: 400 !important;
    font-family: "Roboto", sans-serif;
    font-size: 18px !important;
    line-height: 150%;
    margin-bottom: 16px!important;
    color: black;
}

.gform_wrapper.gravity-theme .gform_body,
.gform_wrapper.gravity-theme .gform_footer {
    width: 100%;
}

.gform_wrapper.gravity-theme .gform_body input,
.gform_wrapper.gravity-theme .gform_body textarea,
.gform_wrapper.gravity-theme .gform_body select {
    height: 62px;
    border: 1px solid #CDCDC2;
    font-size: 18px!important;
    line-height: 150%!important;
    font-family: "Roboto", sans-serif;
    border-radius: 16px;
    padding-left: 24px!important;
}

.gform_wrapper.gravity-theme .gform_body input:focus,
.gform_wrapper.gravity-theme .gform_body textarea:focus {
    border-color: #024166 !important;
}

.gform_wrapper.gravity-theme .gform_body textarea {
    height: 96px !important;
}

.gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
    border: 1px solid #c02b0a !important;
}

.gform_wrapper.gravity-theme .gform_footer {
    padding-bottom: 0 !important;
}

.gform_wrapper.gravity-theme .gform_footer .gform_button.button {
    margin-bottom: 0;
    height: 52px !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2 {
    font-family: "Roboto", sans-serif;
    font-size: 18px !important;
    line-height: 100% !important;
    color: #c02b0a !important;
}

.gform-icon--circle-error:before {
    color: #c02b0a !important;
}

.gform_wrapper.gravity-theme .gfield.gfield--type-consent input {
    appearance: none;
    border: 1px solid #16133E99 !important;
    width: 14px !important;
    height: 14px !important;
    margin: 0;
    position: relative;
    background-color: white;
    padding: 0 !important;
}

.gform_wrapper.gravity-theme .gform_body .gfield_radio .gfield-choice-input{
    appearance: none;
    outline: 1px solid #000 !important;
    border: 4px solid #F0EFEB;
    width: 18px !important;
    height: 18px !important;
    margin: 0;
    position: relative;
    background-color: transparent;
    padding: 0 !important;
}

.gform_wrapper.gravity-theme .gform_body .gfield_radio>.gchoice{
    margin-bottom: 4px;
}

.gform_wrapper.gravity-theme .gform_body .gfield_radio .gfield-choice-input:checked {
    background-color: #16133E;
}

.gform_wrapper.gravity-theme .gform_body .gfield_radio .gfield-choice-input:checked {
    background-color: #16133E;
}

.gform_wrapper.gravity-theme .gform_body .gfield_radio .gfield-choice-input:checked{
    color: #2E53F2;
}

.gform_wrapper.gravity-theme .gform_body .gfield_radio .gfield-choice-input + label{
    color: black;
    font-size: 16px;
    line-height: 150%;
    margin-left: 8px;
}

::placeholder{
    color: #00000099;
}

.gform_wrapper.gravity-theme .gfield.gfield--type-consent label a {
    text-decoration: underline;
}

.gform_wrapper.gravity-theme .gfield.gfield--type-consent label a:hover {
    text-decoration: none;
}

.gform_wrapper.gravity-theme .gfield.gfield--type-consent input:checked {
    background-color: #16133E;
}

.gform_wrapper.gravity-theme .gform_drop_area{
    /* height: 62px; */
    border: 1px solid #CDCDC2!important;
    background: white!important;
    font-size: 18px !important;
    line-height: 150% !important;
    font-family: "Roboto", sans-serif;
    border-radius: 16px!important;
    padding: 18px!important;
    text-align: left!important;
    padding-left: 24px !important;
    margin-bottom: 0!important;
}

.gform_wrapper.gravity-theme .gfield--type-fileupload .gform_drop_instructions{
    margin-bottom: 0!important;
    line-height: 150% !important;
}

.gform_wrapper.gravity-theme .gform_drop_area button{
    z-index: 1;
    /* position: absolute; */
    top: 12px;
    right: 12px;
    padding: 7px 14px;
    display: block;
    width: fit-content;
    transition: 0.2s;
    font-weight: 400;
    cursor: pointer;
    border-radius: 6px;
    color: #000;
    border: 1px solid #007AA4;
    background-color: transparent;
    font-size: 14px;
    line-height: 150% !important;
    font-family: "Roboto", sans-serif;
}

/**
 * Media Queries
 * ----------------------------------------------------------------------------
 */
@media (min-width:425px) {}

@media (min-width:700px) {}


@media (min-width:768px) {
    /**
 * PAGE BUILDER CONTENT
 * ----------------------------------------------------------------------------
 */

    .content-afbeelding .inner>.flexbox-wrapper,
    .twee-kolom-content .inner>.flexbox-wrapper {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }

    .content-afbeelding .inner>.flexbox-wrapper>.content,
    .twee-kolom-content .inner>.flexbox-wrapper>.content-links,
    .twee-kolom-content .inner>.flexbox-wrapper>.content-rechts {
        flex-basis: 48%;
    }

    .twee-kolom-content .inner>.flexbox-wrapper>.content-links,
    .twee-kolom-content .inner>.flexbox-wrapper>.content-rechts {
        max-width: 640px;
    }

    .content-afbeelding .inner>.flexbox-wrapper>span {
        flex-basis: 48%;
        margin-top: 0;
        background-size: cover;
        height: unset;
        max-width: 640px;
    }

    .content-afbeelding .inner>.flexbox-wrapper>.content {
        max-width: 640px;
    }

    .twee-kolom-content .inner>.flexbox-wrapper>div:last-of-type {
        margin-top: 0;
    }

    .gecentreerde-content:not(.ltr) .inner>.flexbox-wrapper,
    .veelgestelde-vragen .inner {
        align-items: center;
        max-width: 832px;
        margin-left: auto;
        margin-right: auto;
    }

    .gecentreerde-content.herolaag .inner>.flexbox-wrapper {
        max-width: unset;
    }

    .gecentreerde-content:not(.ltr) .inner>.flexbox-wrapper>.content .flexbox-wrapper {
        justify-content: center;
    }

    .gecentreerde-content:not(.ltr) .inner>.flexbox-wrapper>.content .flexbox-wrapper p {
        max-width: fit-content;
    }

    .gecentreerde-content:not(.ltr) .inner>.flexbox-wrapper>.content>.btn,
    .gecentreerde-content:not(.ltr) .inner>.flexbox-wrapper>.content>span:last-of-type {
        margin-left: auto;
        margin-right: auto;
    }

    .content-afbeelding.reverse .inner>.flexbox-wrapper>.content {
        order: 1;
    }

    .blokken .pretitel {
        width: fit-content;
        margin-left: auto;
        margin-right: auto;
    }


    .afbeelding-slider .pretitel {
        text-align: center;
    }

    .afbeelding-slider .tekst {
        text-align: center;
    }

    .afbeelding-slider .slider {
        margin-left: auto;
        margin-right: auto;
    }

    .veelgestelde-vragen .categorien {
        display: flex;
        flex-wrap: wrap;
    }


    .veelgestelde-vragen .categorien a {
        text-align: center;
        flex-basis: 25%;
        padding: 15px 20px;
    }

    .reviewlaag .tekst {
        text-align: center;
        margin-bottom: 40px;
    }

    .reviewlaag .inner>a.btn {
        margin-top: 60px;
        margin-left: auto;
        margin-right: auto;
    }

}

@media (min-width:768px) {

    .page-id-839{
        overflow: unset;
    }

    .page-id-839 .content-en-sidebar .sidebar{
        position: sticky;
        top: 150px;
    }

   .homepage .hoofdlaag .inner .flexbox-wrapper{
        justify-content: unset;
    }

    .homepage .hoofdlaag .inner h1{
        font-size: 48px;
        line-height: 120%;
    }

    .homepage .hoofdlaag .flexbox-wrapper .content-links>a.btn{
        display: inline-block;
        margin-right: 16px;
        margin-top: 0!important;
    }

    .homepage .hoofdlaag .inner .flexbox-wrapper .content-links{
        max-width: 800px;
        flex-basis: 70%;
    }

    .homepage .hoofdlaag{
        padding: 180px 0!important;
        height: unset!important;
    }
    
    .galerijlaag .flexbox-wrapper>span:first-of-type{
        flex-basis: 100%;
        height: 350px;
        border-radius: 16px;
    }

    .galerijlaag .flexbox-wrapper>span:nth-child(n + 2){
        flex-basis: 31%;
        height: 200px;
        border-radius: 16px;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(n + 5){
        display: none;
    }
    
    .galerijlaag .flexbox-wrapper span:not(:nth-child(4)) span{
        display: none;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(4){
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }

    .galerijlaag .flexbox-wrapper span:nth-child(3)::before{
        content: none;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(4)::before{
        content: "";
        background-color: rgba(0, 0, 0, 0.623);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        border-radius: 16px;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(4) span{
        font-size: 40px;
        color: white;
        z-index: 3;
        position: relative;
        font-weight: bold;
        display: block;
    }

    .bekijk-ook-projecten .flexbox-wrapper, .bekijk-ook-blogs .inner>.flexbox-wrapper{
        gap: unset;
    }

    .bekijk-ook-projecten .flexbox-wrapper>div, .search-filter-results .flexbox-wrapper .project, .bekijk-ook-blogs .flexbox-wrapper>div{
        flex-basis: 49%;
    }

    .bekijk-ook-projecten .flexbox-wrapper>div:first-child, .search-filter-results .flexbox-wrapper .project:nth-child(2n + 1), .bekijk-ook-blogs .flexbox-wrapper>div:first-child{
        margin-right: 2%;
    }

    .search-filter-results .flexbox-wrapper .project{
        margin-bottom: 48px!important;
    }

    .content-afbeelding .inner>.flexbox-wrapper>span {
        flex-basis: 48%;
        margin-top: 0;
        background-size: cover;
        height: unset;
        max-width: 640px;
    }

    .contactblok .flexbox-wrapper .content{
        flex-basis: 50%;
        flex-grow: 1;
        border-radius: 0 16px 16px 0;
    }

    .contactblok .flexbox-wrapper>span{
        flex-basis: 40%;
        max-width: 540px;
        border-radius: 16px 0 0 16px;
        order: -1;
        background-size: cover;
    }

    .contactblok .flexbox-wrapper .content .flexbox-wrapper{
        flex-direction: row;
    }

    .twee-kolom-content.tijdlijn .inner>.flexbox-wrapper .content-links{
        position: sticky;
        top: 140px;
        height: fit-content;
    }

    .blokken .flexbox-wrapper.teamleden>div{
        flex-basis: 49%;
    }

    .blokken .flexbox-wrapper.teamleden>div:nth-child(2n + 1){
        margin-right: 2%;
    }

    .blokken .flexbox-wrapper.certificering, .blokken .flexbox-wrapper.teamleden{
        column-gap: 0;
    }

.afbeeldinglaag .inner span{
        height: 400px;
    }

    .footer .flexbox-wrapper>div:first-of-type{
        flex-basis: 100% !important;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        padding-bottom: 40px;
        margin-bottom: 40px;
    }

    .blokken:has(.flexbox-wrapper.teamleden) .tekst{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .blokken:has(.flexbox-wrapper.teamleden) .tekst>*{
        flex-basis: 48%;
    }

    .content-en-sidebar .inner>.flexbox-wrapper{
        justify-content: space-between;
    }

    .content-en-sidebar .inner>.flexbox-wrapper>div{
        flex-basis: 48%;
        margin-top: 0;
    }

        .bekijk-ook-projecten .inner>a.btn, .bekijk-ook-blogs .inner>a.btn {
        position: absolute;
        top: 0;
        right: 24px;
        margin-top: 0;
    }

    .content-builder.contact .twee-kolom-content .content-rechts, .content-builder.offerte-aanvragen .twee-kolom-content .content-rechts{
        order: unset;
    }

    .footer .flexbox-wrapper>div {
        flex-basis: fit-content !important;
    }

    .footer .flexbox-wrapper>div:nth-child(2){
        order: 1;
        margin-left: auto;
        max-width: 140px;
        margin-right: 32px;
        margin-top: 0;
    }

    .footer .flexbox-wrapper>div:nth-child(3){
        order: 2;
        margin-top: 0;
    }

    .footer .flexbox-wrapper>div:last-child{
        margin-top: 0;
    }


    .under-footer{
        padding: 24px 0;
    }

    .under-footer .flexbox-wrapper{
        gap: 24px;
    }

    .under-footer .flexbox-wrapper>div:first-child{
        justify-content: center;
        text-align: center;
        gap: 24px;
    }

    .under-footer .flexbox-wrapper>div:last-child p{
        text-align: center;
    }

    .searchandfilter .sf-input-select{
        width: fit-content;
    }

    .searchandfilter>ul>li:has(.sf-input-select){
        width: fit-content;
        display: inline-block;
        margin-right: 10px;
    }
}


@media (min-width: 1024px) {
        .site-header {
        transition: 0.2s;
    }

    .site-header.scrolled {
        top: 0;
    }

    .site-header.has-topheader.top-header-desktop {
        top: 56px;
        height: 98px;
    }

    .hfeed.site:has(.has-topheader.top-header-desktop) {
        margin-top: 154px;
    }

    .site-header .navbar-btn {
        display: none;
    }

    a[href^="tel:"] {
        text-decoration: none;
    }

    .site-header .inner {
        padding: 0 24px;
        max-width: 1870px;
    }

    header.site-header div.menu {
        display: none!important;
    }

    div#navbar {
        transition: unset;
        text-align: center;
        flex-basis: fit-content;
        flex-grow: 1;
        order: 2;
        overflow: visible;
        border-top: 0;
        top: -5px;
        height: 56px;
    }

    .navbar a {
        animation: unset;
    }

    .navbar .menu-menu-1-container {
        position: relative;
    }

    div#navbar ul {
        max-height: unset;
        overflow: visible;
        position: absolute;
        top: 14px;
        width: fit-content;
        right: 0;
        left: 0;
        margin-left: auto;
    }

    div#navbar .nav-menu>li {
        border-bottom: none !important;
        padding-bottom: 0;
        margin: 0 14px;
        width: fit-content;
        display: inline-block;
        border-top: 0 !important;
        padding-bottom: 0;
        border-bottom: 0;
    }


    div#navbar .nav-menu>li.menu-item-has-children {
        padding-bottom: 44px;
    }

    .nav-menu>li:first-of-type {
        padding: 0;
    }

    .nav-menu li a {
        display: unset;
        transition: 0.2s;
        font-size: 16px;
        line-height: 16px;
    }

    div#navbar ul li a::after {
        content: "" !important;
    }

    .nav-menu li.menu-item-has-children>a::after {
        top: -1px;
        right: -18px !important;
    }

    .nav-menu .sub-menu {
        display: block;
        opacity: 0;
        pointer-events: none;
    }

    div#navbar ul .sub-menu {
        padding: 30px 25px 0 25px;
        left: -24px;
        transition: 0.3s;
        box-shadow: rgba(17, 12, 46, .15) 0 48px 50px 0;
        width: max-content;
        top: 12px;
        background: #ffffff;
        padding-top: 0;
        margin-top: 36px;
        margin-right: auto;
    }

    div#navbar ul li.mega .sub-menu{
        background-color: #F0EFEB;
    }

    div#navbar .nav-menu>li:last-of-type .sub-menu {
        right: -20px;
        left: unset;
    }

    div#navbar ul .sub-menu li {
        padding: 0 0 0;
        display: block;
        width: fit-content;
        border: none;
    }

    div#navbar ul .sub-menu li:last-child{
        padding-bottom: 15px;
    }

    .nav-menu li:hover .sub-menu,
    .nav-menu .sub-menu:hover {
        display: block;
        opacity: 1 !important;
        pointer-events: all !important;
    }

    .site-header .inner .home-link {
        margin-left: 0;
        width: 212px;
        height: 66px;
    }

    .site-header .btn.navbar-mobile {
        display: none;
    }

    /* MEGA MENU */

    div#navbar ul.nav-menu li.mega .sub-menu{
        position: unset;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu{
        position: fixed;
        left: 0;
        right: 0;
        margin: unset;
        top: 154px;
        width: 100%;
        border-radius: 0;
        display: flex;
        flex-wrap: wrap;
        height: fit-content;
        justify-content: space-between;
        padding: 32px 24px;
        border-top: 1px solid #C6C6C6;
        box-shadow: 0px 4px 4px 0px #A0A0A026;
        max-width: 1624px;
        margin: 0 auto;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu::before{
        content: "";
        background-color: white;
        position: absolute;
        left: -100%;
        top: -1px;
        width: 200vw;
        height: calc(100% + 1px);
        box-shadow: 0px 4px 4px 0px #A0A0A026;
    }

    div#navbar ul.nav-menu>#menu-item-867:hover>a::before{
        content: "";
        background: rgba(0, 0, 0, 0.40);
        position: fixed;
        left: 0;
        top: 500px;
        width: 100vw;
        height: 100vh;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu>li{
        padding: 24px;
        border-radius: 8px;
        background-color: #F0EFEB;
        margin-top: 0;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu>li>a{
        padding-bottom: 24px;
        margin-bottom: 24px;
        border-bottom: 1px solid #C6C6C6;
        padding-right: 30px;
        word-break: break-word;
        pointer-events: none;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu>li>a::after{
        content: none!important;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu>li .sub-menu{
        margin-top: 0;
        padding: 0;
        margin-left: unset;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu>li>a::after{
        right: 0!important;
    }

    div#navbar ul li.mega .sub-menu{
        width: fit-content;
        box-shadow: unset;
        text-align: left;
    }

    div#navbar ul li.mega .sub-menu .sub-menu li a::before{
        top: 2px;
    }

    div#navbar ul li.mega .sub-menu li{
        flex-basis: 24%;
    }

     div#navbar ul li.mega .sub-menu li a{
        height: fit-content;
     }

     div#navbar ul li.mega .sub-menu .sub-menu li a{
        font-size: 16px;
        color: black;
        line-height: 150%;
        font-weight: normal;
        padding: 0;
        padding-left: 26px;
        position: relative;
        &:hover{
            text-decoration: underline;
            color: black;
        }
     }

     div#navbar ul.nav-menu>li>a{
        font-size: 16px;
        line-height: 150%;
     }

     .nav-menu>li:not(.mega)>ul.sub-menu{
        border-radius: 0 0 16px 16px;
        padding: 32px!important;
        padding-bottom: 17px!important;
     }
    
     .nav-menu>li:not(.mega)>ul.sub-menu>li>a{
        padding: 16px;
        background-color: #F0EFEB;
        border-radius: 8px;
        text-align: left;
        width: 150px!important;
     }

     .nav-menu>li:not(.mega)>ul.sub-menu>li:first-child{
        margin-top: 0!important;
      }

      .nav-menu>li:not(.mega)>ul.sub-menu>li:not(:last-child){
        margin-bottom: 8px;
      }
}

@media (min-width: 1024px) {
    .inner{
        font-size: 20px;
        line-height: 150%;
    }

    .site-header{
        height: 100px;
        padding: 18px 0;
    }

    .hfeed.site{
        margin-top: 100px;
    }

    .mobile {
        display: none;
    }

    .desktop {
        display: block;
    }

    h1 {
        font-size: 80px;
        line-height: 110%;
    }

    h2 {
        font-size: 48px;
        line-height: 150%;
    }

    h3 {
        font-size: 40px;
        line-height: 150%;
    }

    h4 {
        font-size: 32px;
        line-height: 150%;
    }

    h5 {
        font-size: 24px;
        line-height: 150%;
    }

    h6{

    }

    .sub-content h1 {
        font-size: 72px;
        line-height: 150%;
    }

    .sub-content h2 {
       font-size: 48px;
        line-height: 150%;
    }

    .sub-content h3 {
        font-size: 40px;
        line-height: 150%;        
    }

    .sub-content h4 {
        font-size: 32px;
        line-height: 150%;
    }

    .sub-content h5 {
        font-size: 24px;
        line-height: 150%;
    }

    .sub-content h6 {
        
    }

    .content-en-sidebar h2 {
        font-size: 32px;
        line-height: 150%;
    }

    .page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>span{
        height: 282px !important;
    }

    .page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature>div{
        padding: 48px;
    }

    .accordion, .panel {
        font-size: 20px;
        line-height: 150%;
    }

    .homepage .hoofdlaag .inner h1{
        font-size: 80px;
        line-height: 110%;
    }

    .footer .flexbox-wrapper>div:first-of-type span{
        width: 265.283px;
    height: 84px;
    }
    
    .galerijlaag .flexbox-wrapper{
        display: flex!important;
        gap: 32px;
    }
    
    .galerijlaag .flexbox-wrapper>span{
        height: 200px;
        flex-basis: 45%;
        flex-grow: 1;
        background-size: cover;
        transition: 0.6s;
        position: relative;
        &:hover{
            opacity: 0.6;
        }
    }

    .galerijlaag.desktop .flexbox-wrapper.desktop>span:hover{
        opacity: unset;
    }
    
    .galerijlaag .flexbox-wrapper span a{
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .galerijlaag .flexbox-wrapper>span:first-of-type{
        flex-basis: 100%;
        height: 640px;
        border-radius: 16px;
    }

    .galerijlaag .flexbox-wrapper>span:nth-child(n + 2){
        flex-basis: 31%;
        height: 326px;
        border-radius: 16px;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(n + 5){
        display: none;
    }
    
    .galerijlaag .flexbox-wrapper span:not(:nth-child(4)) span{
        display: none;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(4){
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(4)::before{
        content: "";
        background-color: rgba(0, 0, 0, 0.623);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        border-radius: 16px;
    }
    
    .galerijlaag .flexbox-wrapper span:nth-child(4) span{
        font-size: 40px;
        color: white;
        z-index: 3;
        position: relative;
        font-weight: bold;
    }

    /* .content-en-sidebar h2{
        font-size: 32px;
        line-height: 150%;
    } */

    .content-en-sidebar .inner>.flexbox-wrapper>.content{
        flex-grow: 1;
        margin-right: 40px;
    }

    .bekijk-ook-projecten .flexbox-wrapper>div:first-child, .bekijk-ook-blogs .flexbox-wrapper>div:first-child{
        flex-grow: 1;
        margin-right: 48px;
        height: 570px;
    }

    .bekijk-ook-projecten .flexbox-wrapper>div:last-child, .bekijk-ook-blogs .flexbox-wrapper>div:last-child{
        max-width: 519px;
        flex-basis: 40%;
        height: 570px;
    }

     .search-filter-results .flexbox-wrapper .project:nth-child(2n + 1){
        margin-right: 0;
    }

    .search-filter-results .flexbox-wrapper .project{
        flex-basis: 32%;
    }

    .search-filter-results .flexbox-wrapper .project:nth-child(3n + 2){
        margin-right: 2%;
        margin-left: 2%;
    }

    .bekijk-ook-projecten .inner>a.btn, .bekijk-ook-blogs .inner>a.btn{
        top: 12px;
    }

     .contactblok .flexbox-wrapper .content{
        padding: 48px;
    }

        .gform_wrapper.gravity-theme .gform_drop_area {
            height: 62px;
        }
    
        .gform_wrapper.gravity-theme .gform_drop_area button {
            position: absolute;
        }

    .flexbox-wrapper.certificering>div, .blokken .flexbox-wrapper.teamleden>div{
        flex-basis: 32%;
    }

    .flexbox-wrapper.certificering>div:nth-child(2n + 1), .blokken .flexbox-wrapper.teamleden>div:nth-child(2n + 1){
        margin-right: 0%;
    }

    .flexbox-wrapper.certificering>div:nth-child(3n + 2), .blokken .flexbox-wrapper.teamleden>div:nth-child(3n + 2){
        margin-left: 2%;
        margin-right: 2%;
    }

    .afbeeldinglaag .inner span{
        height: 500px;
    }

    .content-builder.contact .twee-kolom-content .content-rechts, .content-builder.offerte-aanvragen .twee-kolom-content .content-rechts{
        flex-grow: 1;
        margin-left: 40px;
        max-width: unset!important;
    }

    .content-builder.contact .twee-kolom-content .content-links, .content-builder.offerte-aanvragen .twee-kolom-content .content-links{
        max-width: 428px!important;
    }

    .blokkenlaag:has(.stappen-animatie) h2{
        text-align: center;

    }

    .blokkenlaag .stappen-animatie{
        display: flex!important;
        gap: 16px;
        margin-top: 40px;
    }

    .blokkenlaag .stappen-animatie .stap{
        flex-basis: 20%;
        flex-grow: 1;
    }

    .blokkenlaag .stappen-carousel{
        display: none;
    }

    .single-vacature .formulierlaag .inner>div{
        padding: 80px;
    }
    
    .single-vacature .formulierlaag .inner>div h2{
        font-size: 40px;
        line-height: 150%;
        margin-bottom: 30px;
    }

    .single-vacature .content-afbeelding .flexbox-wrapper>span{
        max-width: unset;
        height: 680px;
        flex-grow: 1;
        margin-right: 96px;
        flex-basis: 30%;
    }

    .single-vacature .content-afbeelding .flexbox-wrapper>.content {
        max-width: 488px;
    }

    .footer {
        padding-top: 60px;
        padding-bottom: 60px;
    }



}

@media (min-width: 1024px) {
    /**
 * PAGE BUILDER CONTENT
 * ----------------------------------------------------------------------------
 */

    .content-builder>section,
    .sub.single>section {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .sub.single .hoofdlaag{
        padding-bottom: 100px;
    }


    .sub.single .hoofdlaag .flexbox-wrapper .content img {
        margin: 54px 0;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content {
        flex-grow: 1;
        flex-basis: 50%;
        margin-right: 80px;
    }

    body.single {
        overflow: visible;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .sidebar {
        margin-top: 0;
        position: sticky;
        top: 150px;
    }

    .afbeelding-slider .owl-stage-outer .owl-item img {
        max-width: 709px;
        max-height: 620px;
    }

    .sub.single .hoofdlaag .flexbox-wrapper figure:has(figcaption) {
        margin-top: 40px !important;
        margin-bottom: 40px !important;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content p:has(img) {
        margin: 40px 0 !important;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content {
        flex-grow: 1;
        flex-basis: 50%;
        margin-right: 80px;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content {
        flex-grow: 1;
        flex-basis: 50%;
        margin-right: 80px;
        position: relative;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content::after{
        content: "";
        height: 100%;
        width: 1px;
        background-color: #E0E0DA;
        position: absolute;
        top: 0;
        right: -40px;
        z-index: 1;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content blockquote {
        margin: 40px 0 40px !important;
    }

    .sub.single .bekijk-ook h2 {
        text-align: center;
    }

    .sub.single .bekijk-ook h2 {
        margin-bottom: 60px;
    }

    /* .blog:not(.content-builder) .thumb {
        height: 260px;
    }

    .blog:not(.content-builder) .content {
        padding: 32px;
    }

    .blog:not(.content-builder) {
        width: 445px;
    } */

    .reviewlaag .inner {
        overflow: hidden;
    }

    .reviewlaag .review-carousel .owl-item>div {
        padding: 32px;
    }

    .reviewlaag .review-carousel .owl-item .sterren {
        margin-bottom: 32px;
    }

        div#navbar ul {
        margin-right: 30px;
        margin-left: auto;
    }

}

@media (min-width: 1440px) {
    div#navbar .nav-menu>li:last-of-type .sub-menu {
        left: -24px;
        right: unset;
    }

    .site-header .navbar-desktop {
        order: 2;
        display: block;
    }

    .blog-carousel .owl-stage-outer {
        overflow: hidden;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content{
        margin-right: 160px;
    }

    .sub.single .hoofdlaag .flexbox-wrapper .content::after{
        right: -80px;
    }

    .sub.single .hoofdlaag .inner{
        max-width: 1536px;
    }

    .site-header .navbar-desktop {
        margin-right: 0;
    }

    .herolaag .flexbox-wrapper{
        transition: 0.3s;
    }

    .herolaag .flexbox-wrapper.scrolled-past{
        position: fixed;
        top: 26px;
        left: 0;
        right: 0;
        z-index: 99999;
    }

    .herolaag .flexbox-wrapper.scrolled-past .usp{
        background-color: #F0EFEB;
    }

    .content-builder.contact .twee-kolom-content .content-links .tekst>div, .content-builder.offerte-aanvragen .twee-kolom-content .content-links .tekst>div{
        padding: 48px;
    }

    .content-builder.contact .twee-kolom-content .content-rechts, .content-builder.offerte-aanvragen .twee-kolom-content .content-rechts{
        margin-left: 64px;
        padding: 80px;
    }

    .content-builder.contact .twee-kolom-content .content-rechts .gform_wrapper.gravity-theme .gform_fields, .content-builder.offerte-aanvragen .twee-kolom-content .content-rechts .gform_wrapper.gravity-theme .gform_fields{
        grid-row-gap: 26px!important;
    }

    .gform_wrapper.gravity-theme .gfield_label{
        font-size: 18px!important;
        margin-bottom: 16px!important;
    }

    .gform_wrapper.gravity-theme .gform_body input, .gform_wrapper.gravity-theme .gform_body textarea, .gform_wrapper.gravity-theme .gform_body select{
        font-size: 18px;
    }

    ::placeholder{
        font-size: 18px;
    }

    .gform_wrapper.gravity-theme .gform_body .gfield_radio>.gchoice{
        width: fit-content;
        display: inline-block;
        margin-right: 16px;
    }

    .gform_wrapper.gravity-theme .gform_body .gfield_radio .gfield-choice-input + label{
        max-width: unset;
    }

    .afbeeldinglaag .inner span{
        height: 600px;
    }

       .blokken .flexbox-wrapper.teamleden>div{
        height: 570px;
    }

    .blokken .flexbox-wrapper.teamleden{
        row-gap: 48px;
        margin-top: 80px;
    }

    .blokken .flexbox-wrapper.teamleden>div>div{
        left: 54px;
    }

    .blokken .flexbox-wrapper.teamleden>div:hover>div{
        bottom: 44px;
    }

    .twee-kolom-content.tijdlijn .content-links{
        max-width: 504px!important;
    }

    .twee-kolom-content.tijdlijn .content-rechts{
        flex-grow: 1;
        margin-left: 80px;
        max-width: unset!important;
    }

    .contactblok .flexbox-wrapper .content{
        padding: 72px 64px;
    }

    .contactblok .flexbox-wrapper .content p{
        max-width: 750px;
    }

    .content-afbeelding .inner>.flexbox-wrapper>span {
        height: 680px;
        flex-grow: 1;
        max-width: unset;
    }

    .content-afbeelding .inner>.flexbox-wrapper>.content {
        max-width: 488px;
    }

    .content-afbeelding .inner>.flexbox-wrapper {
        gap: 100px;
    }

    .search-filter-results .flexbox-wrapper .project{
        height: 570px;
    }

    .bekijk-ook-projecten .flexbox-wrapper>div>div h5, .search-filter-results .flexbox-wrapper .project>div h5{
        font-size: 40px;
        line-height: 150%;
    }

    .bekijk-ook-projecten .flexbox-wrapper>div, .search-filter-results .flexbox-wrapper .project{
        padding: 48px;
    }

    .content-en-sidebar .inner>.flexbox-wrapper>.content{
        margin-right: 120px;
    }

    div#navbar ul.nav-menu>li.mega>.sub-menu>li>a{
        font-size: 20px;
        line-height: 150%;
    }

    div#navbar .nav-menu>li {
        margin: 0 20px;
    }

    .single-vacature .herolaag{
        min-height: 468px;
    }

    .page-id-839 .content-en-sidebar .content .flexbox-wrapper{
        margin-top: 80px;
    }

    .page-id-839 .content-en-sidebar .content{
        margin-right: 60px!important;
        padding-right: 60px;
        border-right: 1px solid #E0E0DA;
    }

    .page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature{
        flex-basis: 48%;
    }

    .page-id-839 .content-en-sidebar .content .flexbox-wrapper .vacature:nth-child(2n+1){
        margin-right: 4%;
    }

    .page-id-839 .content-en-sidebar .content .flexbox-wrapper{
        gap: unset;
        row-gap: 80px;
    }
}


@media (min-width: 1440px) {
    /**
 * PAGE BUILDER CONTENT
 * ----------------------------------------------------------------------------
 */


}






@media (max-width: 1023px) {

    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="submit"],
    textarea {
        -webkit-appearance: none;
        border-radius: 0;
    }

    a[href^="tel"] {
        text-decoration: none;
    }

    /* Vacature sidebar */


    .single-vacature .sub.single .hoofdlaag .sidebar{
        position: fixed;
        bottom: 24px;
        max-height: 113px;
        overflow: hidden;
        margin: 0 auto;
        left: 24px;
        right: 24px;
        width: calc(100vw - 48px);
        z-index: 5;
        transition: 0.4s;
    }

    .single-vacature .sub.single .hoofdlaag .sidebar>span:first-child{
        width: 24px;
        height: 24px;
        position: absolute;
        top: 14px;
        right: 14px;
        cursor: pointer;
    }

    .sub.single .hoofdlaag .sidebar .flexbox-wrapper span{
        width: 70px;
        height: 70px;
        transition: 0.3s;
    }

    .sub.single .hoofdlaag .sidebar .flexbox-wrapper div p:last-of-type{
        opacity: 0;
        transition: 0.3s;
    }

    /* Expanded */

    .single-vacature .sub.single .hoofdlaag .sidebar.expanded {
        max-height: 350px;
    }

    .sub.single .hoofdlaag .sidebar.expanded .flexbox-wrapper div p:last-of-type{
        opacity: 1;
    }

    .sub.single .hoofdlaag .sidebar.expanded .flexbox-wrapper span{
        width: 100px;
        height: 100px;
    }
}



/* blokkenstapel animatie */

@media (min-width: 1024px) {
    /* Desktop stappen animation */
.desktop.flexbox-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 530px;
    perspective: 1000px;
}

.desktop.flexbox-wrapper .stap {
    position: absolute;
    width: 280px;
    background: white;
    border-radius: 20px;
    padding: 40px 30px;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Initial stacked state */
.stappen-animatie.stacked .stap {
    left: 50%;
    transform: translateX(-50%);
}

.stappen-animatie.stacked .stap:nth-child(1) {
    z-index: 4;
    transform: translateX(-50%) rotate(-1deg);
}

.stappen-animatie.stacked .stap:nth-child(2) {
    z-index: 3;
    transform: translateX(-50%) translateX(10px) translateY(10px) rotate(-0.5deg);
}

.stappen-animatie.stacked .stap:nth-child(3) {
    z-index: 2;
    transform: translateX(-50%) translateX(20px) translateY(20px) rotate(0deg);
}

.stappen-animatie.stacked .stap:nth-child(4) {
    z-index: 1;
    transform: translateX(-50%) translateX(30px) translateY(30px) rotate(0.5deg);
}

/* Spread state - met animatie behouden */
.stappen-animatie.spread .stap {
    position: absolute;
    width: calc(25% - 15px); /* 4 kaarten met gap */
    height: 100%;
}

.stappen-animatie.spread .stap:nth-child(1) {
    left: 0;
    z-index: 4;
}

.stappen-animatie.spread .stap:nth-child(2) {
    left: calc(25%);
    z-index: 3;
}

.stappen-animatie.spread .stap:nth-child(3) {
    left: calc(50%);
    z-index: 2;
}

.stappen-animatie.spread .stap:nth-child(4) {
    left: calc(75%);
    z-index: 1;
}

/* Aanpassing voor de breedte in stacked state ook */
.stappen-animatie.stacked .stap {
    width: calc(25% - 15px);
    left: 50%;
    transform: translateX(-50%);
}
}

@media (min-width: 1440px) {
    .stappen-animatie.spread .stap {
        height: 375px;
        width: calc(25% - 32px);
    }

    .desktop.flexbox-wrapper{
        height: 410px;
    }
}

@media (min-width: 1750px) {
    .stappen-animatie.spread .stap{
        height: 337px;
    }

    .desktop.flexbox-wrapper.stappen-animatie{
        height: 370px;
    }
}