/*
 Theme Name:   LMPR (GeneratePress Child Theme)
 Theme URI:    https://lamper-design.nl
 Description:  GeneratePress child theme
 Author:       Team Lamper Design
 Author URI:   https://lamper-design.nl
 Template:     generatepress
 Version:      0.1
*/

@font-face {
  font-display: swap; 
  font-family: 'Lora';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/lora-v37-latin-600.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/rubik-v31-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: italic;
  font-weight: 400;
  src: url('assets/fonts/rubik-v31-latin-italic.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/rubik-v31-latin-600.woff2') format('woff2');
}

/* Globals */

:root {
    --sitewidth: 1320px;
    --narrow-content: 78ch;
    --container-padding: 1rem;
    --border-radius: .5rem;
    --border-radius-small: .25rem;
    --max-text-width: 85ch;
    interpolate-size: allow-keywords;
}

@media (width >= 769px) {

    :root {
        --container-padding: 2.5rem;
    }

}

::selection {
    color: var(--contrast-3);
    background-color: var(--contrast-2);
}

html {
    overflow-x: clip;
}

html.mobile-menu-open.slide-opened, 
html:has(.facetwp-flyout.active) {
    overflow: clip;
}

@media (prefers-reduced-motion: no-preference) {

    html {
        scroll-behavior: smooth;
    }

    @view-transition {
        navigation: auto;
    }

}

h1, h2, h3, h4, h5, h6, .h1-style, .h2-style, .h3-style, .h4-style {
    overflow-wrap: anywhere;
    text-wrap: balance;
}

:is(h1,h2,h3,h4,h5,h6) a {
    text-decoration: none;
}

:is(h1,h2,h3,h4,h5,h6) a:hover {
    text-decoration: underline;
}

p,
li:not(.comment),
figcaption {
    text-wrap: pretty;
    /*max-width: 85ch;*/
}

div p:not(:has(+ a)):last-of-type {
    margin-bottom: 0px;
}

a {
    text-underline-offset: .125em;
}

a:hover {
    text-decoration: none;
}

ul, ol {
	margin-left: 1.5em;
}

input[type="checkbox"],
input[type="radio"] {
	accent-color: var(--accent);
}

a:not([href]) {
    cursor: pointer;
}

.entry-content p+:is(h2,h3,h4) {
    margin-top: .75em;
}

.entry-content > figure:not(.wp-block-gallery) img {
    margin-bottom: 1.5rem;
}

.wp-block-gallery {
    margin-block: 1.25rem;
}

.wp-block-gallery img {
    transition: opacity 250ms ease-in-out;
}

.wp-block-gallery img:hover {
    opacity: .8;
}

.entry-content ol li::marker {
    font-weight: 600;
}

.entry-content .wp-block-embed {
    margin-block: 1.5em;
}

.gb-container p:last-child:last-of-type {
    margin-bottom: 0;
}

figcaption {
	margin-top: .375rem;
	font-weight: 500;
    text-align: center;
}

.list-nostyle {
	list-style-type: '';
	margin: 0;
}

.list-inline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .75rem 1.25rem;
}

.list-checkmark {
    margin-bottom: 1.5rem;
    font-weight: 400;
}

.list-checkmark li {
    display: flex;
    gap: .75rem;
    padding: .25rem 0;
}

.list-checkmark li::before {
    content: '';
    flex-shrink: 0;
    display: block;
    background-color: var(--accent);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") no-repeat 50% 50% / 1rem;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") no-repeat 50% 50% / 1rem;
    width: 1rem;
    height: 1rem;
    margin-top: .35rem;
}

.scroll-offset,
[id] {
    scroll-margin-top: 2rem;
}

.line-clamp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-2 {
    -webkit-line-clamp: 2;
}

.line-clamp-5 {
    -webkit-line-clamp: 5;
}

.vector-top-left,
.vector-top-right {
    position: relative;
}

.vector-top-left::after,
.vector-top-right::after {
    content: "";
    position: absolute;
    background-image: url("/wp-content/uploads/2025/10/vector.svg");
    width: 360px;
    height: 360px;
    background-size: contain;
    z-index: -1;
    opacity: 0.4;
    rotate: 180deg;
}

.vector-top-left::after {
    top: -2.75rem;
    left: -2.75rem;
}

.vector-top-right::after {
    top: -2.75rem;
    right: -2.75rem;
}

@media only screen and (max-width:1024px) {
    .vector-top-left::after,
    .vector-top-right::after {
        width: 200px;
        height: 200px;
    }
    .vector-top-left::after {
        top: -1rem;
        left: -1rem;
    }

    .vector-top-right::after {
        top: -1rem;
        right: -1rem;
    }
}

/* Form */

.gform_wrapper .gform-body input:not(.gform_button, .gfield-choice-input, [type="file"]) {
    height: 60px;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
    background-color: transparent;
    border: 1px solid var(--contrast-3);
    color: var(--contrast-3) !important;
    font-size: 1em;
}

.gform_wrapper .gform-body input:not(.gform_button, .gfield-choice-input, [type="file"])::-webkit-input-placeholder {
    color: var(--contrast-3) !important;
}

.gform_wrapper .gform-body textarea {
    padding: 1.25rem;
	font-size: 17px;
    color: var(--contrast-3);
}

.gform_wrapper .gform-footer {
    padding: 0px !important;
    margin-top: 1rem !important;
}

.gform_wrapper .gform-footer .gform_button {
    margin-bottom: 0px !important;
}

.gform_wrapper .gform-footer .gform_button {
    background-color: transparent;
    border: 1px solid var(--contrast-3);
    color: var(--contrast-3);
    padding: .875rem 1.25rem;
    transition: all 0.2s ease 0s;
}

.gform_wrapper .gform-footer .gform_button:hover {
    text-decoration: underline;
    background-color: var(--accent-2);
    color: var(--base-3);
}

/* Header */

.gb-site-header ul.gb-menu > li > a:hover,
.gb-site-header ul.gb-menu > li.current-menu-item > a {
    text-decoration: underline;
}

.gb-site-header ul.gb-menu > li.current-menu-item > a:hover {
    text-decoration: none;
}

.header-cta a {
    padding: .875rem 1.25rem;
    background-color: var(--contrast-2);
    color: var(--contrast-3) !important;
    column-gap: 0.5rem !important;
}

.header-cta a::after {
    content: '';
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M216 64C229.3 64 240 74.7 240 88L240 128L400 128L400 88C400 74.7 410.7 64 424 64C437.3 64 448 74.7 448 88L448 128L480 128C515.3 128 544 156.7 544 192L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 192C96 156.7 124.7 128 160 128L192 128L192 88C192 74.7 202.7 64 216 64zM216 176L160 176C151.2 176 144 183.2 144 192L144 240L496 240L496 192C496 183.2 488.8 176 480 176L216 176zM144 288L144 480C144 488.8 151.2 496 160 496L480 496C488.8 496 496 488.8 496 480L496 288L144 288z'/%3E%3C/svg%3E");
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M216 64C229.3 64 240 74.7 240 88L240 128L400 128L400 88C400 74.7 410.7 64 424 64C437.3 64 448 74.7 448 88L448 128L480 128C515.3 128 544 156.7 544 192L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 192C96 156.7 124.7 128 160 128L192 128L192 88C192 74.7 202.7 64 216 64zM216 176L160 176C151.2 176 144 183.2 144 192L144 240L496 240L496 192C496 183.2 488.8 176 480 176L216 176zM144 288L144 480C144 488.8 151.2 496 160 496L480 496C488.8 496 496 488.8 496 480L496 288L144 288z'/%3E%3C/svg%3E");
    height: 24px;
    width: 24px;
    background-color: var(--contrast-3);
}

.gb-menu-container--mobile .header-cta a {
    color: var(--contrast-3);
}

.gb-menu-container--mobile .gb-menu-toggle {
    color: var(--base-3) !important;
    right: 1rem !important;
    top: 50px !important;
}

.wp-block-site-logo a {
    position: relative;
    z-index: 999;
}
 
.gb-menu-container--mobile > ul.gb-menu {
    gap: 1rem;
    align-items: flex-start;
    padding-inline: 1rem;
    margin-top: 1.5rem;
}

.gb-menu-container--mobile > ul.gb-menu > li > a {
    font-size: 1.25rem;
}

.gb-site-header .off-canvas-logo {
    display: none;
}

.gb-site-header .gb-menu-container--mobile .off-canvas-logo {
    display: block;
}

.gb-site-header .gb-menu-container--mobile .gb-menu-toggle-text {
    display: none;
}

.gb-site-header .gb-menu-container--mobile .gb-menu-close-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gb-site-header .gb-menu-container--mobile .gb-menu-close-icon::after {
    content: "sluiten";
    line-height: 1;
}

.gb-site-header {
    position: absolute;
    width: 100%;
    z-index: 999;
    background-image: linear-gradient(360deg, rgba(255, 255, 255, 0), rgba(28, 28, 26, 0.8));
}

/* Home */

.home .site-main {
    margin-top: 0px;
}

/* Footer */

.site-footer iframe {
    display: block;
    min-height: 250px;
}

@media screen and (min-width: 769px) {
    .footer-accordion-item .gb-accordion__toggle {
        pointer-events:none
    }

    .footer-accordion-item .gb-accordion__toggle .gb-accordion__toggle-icon {
        display: none
    }

    .footer-accordion-item .gb-accordion__content {
        max-height: inherit!important;
        visibility: visible!important
    }
}

@media only screen and (max-width:767px) {
    .footer-accordion-item {
        border-bottom: 1px solid var(--white);
    }
}

.site-footer h2 {
    color: var(--base-3);
}

.footer-accordion-item .gb-accordion__content {
    padding-bottom: 0.25rem;
}

.footer-accordion-item ul {
    list-style-type: "";
    margin: 0px;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/*.footer-accordion-item a {
    text-decoration: none;
}

.footer-accordion-item a:hover {
    text-decoration: underline;
}*/

.footer-accordion-item .gb-accordion__toggle-icon {
    height: 1.5em;
}

.site-footer p a,
.site-footer ul li a {
    color: var(--base-3);
}

.site-footer .gform_wrapper input[type=email] {
    max-width: 500px !important;
    background-color: var(--base-3);
    border: 0px;
	font-size: 17px !important;
}

.site-footer .gform_wrapper .gform-footer .gform_button {
    border: 1px solid var(--base-3);
    color: var(--base-3);
}

.site-footer .gform_wrapper .gform-footer .gform_button:hover {
    text-decoration: underline;
    background-color: var(--accent-2);
    border-color: var(--accent-2);
}

/* Subpages */

body:not(.home) .site-content .site-main {
    margin-top: 0px;
}

/*body:not(.home) .site-content header.entry-header,
body:not(.home, .full-width-content) .site-main {
    margin-top: 1.5rem;
}*/

@media only screen and (max-width:767px) {
    body.full-width-content:not(.home) .site-content header.entry-header {
        padding-inline: 1rem;
    }

    /*body:not(.home) .site-content header.entry-header,
    body:not(.home, .full-width-content) .site-main {
        margin-top: 1rem;
    }*/

    body:not(.single-post, .archive) .rank-math-breadcrumb {
        padding-inline: 1rem !important;
    }
}

/*body:not(.home) .site-content .entry-content .container-padding:first-of-type {
    margin-top: 0px;
}*/

body:not(.single-post, .archive) .rank-math-breadcrumb {
    padding-inline: 2rem;
}

.rank-math-breadcrumb,
.rank-math-breadcrumb a {
    color: var(--base-3);
}

/* Blogs loop */

.blogs .facetwp-type-checkboxes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox {
    background: none;
    padding: .875rem 1.25rem;
    border: 1px solid var(--contrast-3);
    color: var(--contrast-3);
    margin-bottom: 0px;
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox .facetwp-counter {
    font-size: 12px;
    display: flex;
    align-items: flex-end;
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox {
    display: flex;
    align-items: center;
    transition: all 0.2s ease 0s;
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox:hover {
    background-color: var(--accent-2);
    color: var(--base-3);
    border-radius: var(--accent-2);
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox:hover .facetwp-display-value {
    text-decoration: underline;
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox.checked::before {
    content: '';
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M183.1 137.4C170.6 124.9 150.3 124.9 137.8 137.4C125.3 149.9 125.3 170.2 137.8 182.7L275.2 320L137.9 457.4C125.4 469.9 125.4 490.2 137.9 502.7C150.4 515.2 170.7 515.2 183.2 502.7L320.5 365.3L457.9 502.6C470.4 515.1 490.7 515.1 503.2 502.6C515.7 490.1 515.7 469.8 503.2 457.3L365.8 320L503.1 182.6C515.6 170.1 515.6 149.8 503.1 137.3C490.6 124.8 470.3 124.8 457.8 137.3L320.5 274.7L183.1 137.4z'/%3E%3C/svg%3E");
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M183.1 137.4C170.6 124.9 150.3 124.9 137.8 137.4C125.3 149.9 125.3 170.2 137.8 182.7L275.2 320L137.9 457.4C125.4 469.9 125.4 490.2 137.9 502.7C150.4 515.2 170.7 515.2 183.2 502.7L320.5 365.3L457.9 502.6C470.4 515.1 490.7 515.1 503.2 502.6C515.7 490.1 515.7 469.8 503.2 457.3L365.8 320L503.1 182.6C515.6 170.1 515.6 149.8 503.1 137.3C490.6 124.8 470.3 124.8 457.8 137.3L320.5 274.7L183.1 137.4z'/%3E%3C/svg%3E");
    height: 20px;
    width: 20px;
    background-color: var(--contrast-3);
    margin-right: 0.5rem;
}

.blogs .facetwp-type-checkboxes .facetwp-checkbox:hover::before {
    background-color: var(--base-3);
}

.blog-item a {
    text-decoration: none;
}

.blog-item a:hover h2 {
    text-decoration: underline;
}

.blog-item img {
    object-fit: cover;
}

.blog-item-container .blog-category p {
    display: flex;
    align-items: center;
    gap: 0.5rem;
	flex-wrap: wrap;
}

.blog-item-container .blog-category span {
    background-color: var(--accent);
    color: var(--base-3);
    padding: 0.25rem 0.5rem;
    font-size: 14px;
}

.single-post .entry-meta .entry-date.published {
    display: inline-flex;
    align-items: center;
    column-gap: 0.5rem !important;
}

.single-post .entry-meta .entry-date.published::before {
    content: '';
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M216 64C229.3 64 240 74.7 240 88L240 128L400 128L400 88C400 74.7 410.7 64 424 64C437.3 64 448 74.7 448 88L448 128L480 128C515.3 128 544 156.7 544 192L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 192C96 156.7 124.7 128 160 128L192 128L192 88C192 74.7 202.7 64 216 64zM480 496C488.8 496 496 488.8 496 480L496 416L408 416L408 496L480 496zM496 368L496 288L408 288L408 368L496 368zM360 368L360 288L280 288L280 368L360 368zM232 368L232 288L144 288L144 368L232 368zM144 416L144 480C144 488.8 151.2 496 160 496L232 496L232 416L144 416zM280 416L280 496L360 496L360 416L280 416zM216 176L160 176C151.2 176 144 183.2 144 192L144 240L496 240L496 192C496 183.2 488.8 176 480 176L216 176z'/%3E%3C/svg%3E");
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M216 64C229.3 64 240 74.7 240 88L240 128L400 128L400 88C400 74.7 410.7 64 424 64C437.3 64 448 74.7 448 88L448 128L480 128C515.3 128 544 156.7 544 192L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 192C96 156.7 124.7 128 160 128L192 128L192 88C192 74.7 202.7 64 216 64zM480 496C488.8 496 496 488.8 496 480L496 416L408 416L408 496L480 496zM496 368L496 288L408 288L408 368L496 368zM360 368L360 288L280 288L280 368L360 368zM232 368L232 288L144 288L144 368L232 368zM144 416L144 480C144 488.8 151.2 496 160 496L232 496L232 416L144 416zM280 416L280 496L360 496L360 416L280 416zM216 176L160 176C151.2 176 144 183.2 144 192L144 240L496 240L496 192C496 183.2 488.8 176 480 176L216 176z'/%3E%3C/svg%3E");
    height: 24px;
    width: 24px;
    background-color: var(--contrast-3);
}

.single-post .site-main {
    margin-top: 1.5rem;
}

.archive .site-main > .container-padding,
.archive .site-main > header {
    display: none;
}

.archive .site-main {
    margin-top: 6.25rem !important;
    padding-inline: 2rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.archive .site-main article {
    margin-bottom: 0px;
}

.archive .site-main article a {
    text-decoration: none;
}

.archive .site-main article a:hover h2 {
    text-decoration: underline;
}

@media only screen and (max-width:1024px) {
    .archive .site-main {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (max-width:767px) {
    .archive .site-main {
        padding-inline: 1rem;
        grid-template-columns: repeat(1, 1fr);
        margin-top: 5rem !important;
    }
}

.blog-item-container .blog-loop-item-content h2,
.blog-item-container .blog-loop-item-content p.gb-text {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
} 

/* Contact */

.nieuwsbrief-on-page .gform_wrapper .gform-body input[type=email] {
    max-width: 500px;
    width: 350px;
}

.nieuwsbrief-on-page .gform_wrapper form {
    display: flex;
    column-gap: .5rem;
}

.nieuwsbrief-on-page .gform-footer input[type=submit] {
    height: 60px;
}

@media only screen and (max-width:767px) {
    .nieuwsbrief-on-page .gform_wrapper form {
        flex-direction: column;
    }

    .nieuwsbrief-on-page .gform_wrapper .gform-body input[type=email] {
        width: 100%;
    }
}

.form-alt .gform_wrapper .gform-body input:not(.gform_button, .gfield-choice-input, [type="file"]) {
    background-color: var(--base-3);
    border: 0px;
}

.form-alt .gform_wrapper .gform-footer input[type=submit] {
    border-color: var(--base-3);
    color: var(--base-3);
}

.form-alt .gform_wrapper .gform-footer input[type=submit]:hover {
    border-color: var(--accent-2);
}

.contact-list {
    list-style-type: "";
}

.faq .gb-accordion .gb-accordion__toggle span.gb-accordion__toggle-icon {
    height: 20px;
}

/* Boeken */

.booking iframe .cals-container {
    width: 100%;
}

/* 404 */

.error404 .site-main {
    margin-top: 0px;
}