/**
Theme Name: verandernest
Author: Webdude
Author URI: https://webddude.be
Description: VerAnderNest begeleidt samenwerking en verandering - voor mensen en organisaties die vastlopen en opnieuw richting, verbinding en beweging willen.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: verandernest
Template: astra
*/


/* --- Spacing: horizontale padding content + footer (32px / 20px) --- */
.entry-content>*,
.site-primary-footer-wrap,
.site-below-footer-wrap {
    padding-left: 32px !important;
    padding-right: 32px !important;
}

.site-below-footer-wrap {
    padding-top: 0;
    padding-bottom: 0;
}

@media (max-width: 768px) {

    .entry-content>*,
    .site-primary-footer-wrap,
    .site-below-footer-wrap {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

:root :where(.is-layout-flow)>* {
    margin-block-start: 20px;
}

/* --- Footer: kolommen 40/30/30 + gap --- */
.site-primary-footer-inner-wrap.ast-builder-grid-row {
    display: grid;
    grid-template-columns: 4fr 3fr 3fr;
    gap: 64px;
}

@media (max-width: 921px) {
    .site-primary-footer-inner-wrap.ast-builder-grid-row {
        grid-template-columns: 1fr;
        gap: 32px;
    }
}

.site-footer .widget-title,
.site-footer h2.wp-block-heading {
    margin-bottom: 1em;
}


.kicker {
    color: #45704a;
    font-size: 13.5px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2.5px;
}

.ast-single-post .entry-content .wp-block-button .wp-block-button__link,
.ast-single-post .entry-content .wp-block-button.is-style-outline .wp-block-button__link,
.ast-single-post .entry-content .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button,
.ast-single-post .entry-content .wp-block-search .wp-block-search__button,
body .entry-content .wp-block-file .wp-block-file__button {
    line-height: 1em;
}


.img-arc img {
    box-shadow: 0 24px 60px rgba(45, 70, 62, 0.16);
}

.quote-card {
    font-family: Lora, Georgia, serif;
    width: auto !important;
}

.position-rel {
    position: relative;
}

.letter-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #e8efe4;
    color: #45704a;
    font-family: 'Lora', serif;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 4px;
}


.step-circle {
    width: 54px;
    height: 54px;
    border: 1.5px solid #b9cbb4;
    border-radius: 50%;
    color: #45704a;
    font-family: 'Lora', serif;
    font-size: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}




/* Labels */

.contact-form form{
    width:100%!important;
}

.wpforms-container{
    width:100%!important;
}

.vn-form .wpforms-field-label {
    font-family: 'Jost', sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #55635a;
    letter-spacing: 0.3px;
    margin-bottom: 8px;
}

/* Invulvelden — WPForms zet eigen styling met hoge
     specificiteit, daarom overal !important */
.vn-form .wpforms-form input[type="text"],
.vn-form .wpforms-form input[type="email"],
.vn-form .wpforms-form input[type="tel"],
.vn-form .wpforms-form textarea {
    font-family: 'Jost', sans-serif !important;
    font-size: 16px !important;
    color: #2d463e !important;
    background: #fdf8f2 !important;
    border: 1px solid #ddd4c4 !important;
    border-radius: 10px !important;
    padding: 13px 16px !important;
    height: auto !important;
    max-width: 100% !important;
    box-shadow: none !important;
}

.vn-form .wpforms-form input:focus,
.vn-form .wpforms-form textarea:focus {
    border-color: #45704a !important;
    outline: none !important;
    box-shadow: none !important;
}

.vn-form .wpforms-form input::placeholder,
.vn-form .wpforms-form textarea::placeholder {
    color: #a3b0a6 !important;
    opacity: 1 !important;
}

/* Verzendknop — zelfde pill als de site.
     WPForms gebruikt afhankelijk van de versie een button of input,
     en zet zelf styling met hoge specificiteit — daarom !important. */
.vn-form .wpforms-submit,
.vn-form button[type="submit"],
.vn-form input[type="submit"] {
    font-family: 'Jost', sans-serif !important;
    font-size: 16.5px !important;
    font-weight: 500 !important;
    letter-spacing: 0.4px !important;
    color: #fdf8f2 !important;
    background: #45704a !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 15px 32px !important;
    height: auto !important;
    line-height: 1 !important;
}

.vn-form .wpforms-submit:hover,
.vn-form button[type="submit"]:hover,
.vn-form input[type="submit"]:hover {
    background: #2d463e !important;
    color: #fdf8f2 !important;
}


.entry-content .blog-list ul{
    padding-left: 0;
}

/* Blog card look + clickable (JS maakt de volle card klikbaar) */
.blog-list .blog-card {
    border: 1px solid #eee3d3;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 12px 36px rgba(45, 70, 62, 0.08);
}

/* Featured image vult de linkerkolom, zodat de card-radius de hoeken netjes afknipt */
.blog-list .blog-card .wp-block-spectra-container:has(.wp-block-post-featured-image) {
    align-self: stretch;
    height: 100%;
    min-height: 100%;
    justify-content: stretch;
    align-items: stretch;
}

.blog-list .blog-card .wp-block-post-featured-image {
    flex: 1 1 auto;
    height: 100%;
    min-height: 220px;
    margin: 0;
    overflow: hidden;
}

.blog-list .blog-card .wp-block-post-featured-image a,
.blog-list .blog-card .wp-block-post-featured-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.blog-list .blog-card .wp-block-post-featured-image img {
    object-fit: cover !important;
    border-radius: 0 !important;
}

.blog-list .blog-card.is-clickable {
    cursor: pointer;
}

.blog-list ul.wp-block-post-template{
    margin:0;
}

.blog-list ul.wp-block-post-template li{
    width:100%;
}

.wp-block-post-terms a,
.ast-terms-link a {
    background: #e8efe4;
    color: #45704a;
    padding: 5px 14px;
    border-radius: 999px;
    text-decoration: none !important;
    font-size: 13.5px;
}

.ast-single-entry-banner img {
    border-radius: 24px;
}

.ast-single-entry-banner img img,
.ast-single-entry-banner img.wp-post-image,
.ast-single-entry-banner[data-post-type="post"] .post-thumb img,
.ast-single-post-featured-section img {
    width: 1000px;
    max-width: min(1000px, calc(100vw - 48px));
    margin-left: 50%;
    transform: translateX(-50%);
    border-radius: 24px;
    height: 420px;
    object-fit: cover;
}


/* Headings op single posts (kleiner dan op content-pagina's) */
.single-post .ast-single-entry-banner[data-post-type="post"] h1.entry-title {
    font-size: 44px;
    line-height: 1.2;
}

.single-post .entry-content h2.wp-block-heading {
    font-size: 30px;
    line-height: 1.25;
}

.single-post .entry-content h3.wp-block-heading {
    font-size: 24px;
    line-height: 1.3;
}

.single-post .entry-content h4.wp-block-heading {
    font-size: 20px;
    line-height: 1.35;
}

.single-post .entry-content p.wp-block-paragraph {
    font-size: 18px;
}

/* Gap tussen elk block in single post */
.single-post .entry-content>*+*:not(h2):not(h3),
.single-post .entry-content .is-layout-flow>*+*:not(h2):not(h3) {
    margin-top: 24px;
    margin-block-start: 24px;
}

.single-post .entry-content>*,
.single-post .entry-content .is-layout-flow>* {
    margin-bottom: 0;
    margin-block-end: 0;
}

.single-post .entry-content > * + h2.wp-block-heading,
.single-post .entry-content .is-layout-flow > * + h2.wp-block-heading {
    margin-top: 40px;
    margin-block-start: 40px;
}

.single-post .entry-content h3.wp-block-heading {
    margin-top: 32px !important;
    margin-block-start: 32px !important;
}

/* Tablet / mobiel */
@media (max-width: 921px) {
    .single-post .ast-single-entry-banner[data-post-type="post"] h1.entry-title {
        font-size: 36px;
    }

    .single-post .entry-content h2.wp-block-heading {
        font-size: 27px;
    }

    .single-post .entry-content h3.wp-block-heading {
        font-size: 22px;
    }
}

@media (max-width: 544px) {
    .single-post .ast-single-entry-banner[data-post-type="post"] h1.entry-title {
        font-size: 30px;
    }

    .single-post .entry-content h2.wp-block-heading {
        font-size: 25px;
    }

    .single-post .entry-content h3.wp-block-heading {
        font-size: 21px;
    }

    .wp-block-columns .wp-block-column:not(:last-child) {
        margin-bottom: 0;
    }
}


.accent-left {
    border-left: 2px solid #45704a;
    padding-left: 28px;
}

div.wpforms-container-full:not(:empty) {
    margin: 0 !important;
    padding: 0;
}

/* Naam + e-mail + submit full width op mobile */
@media (max-width: 600px) {
    div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-one-half {
        width: 100%;
        float: none;
        margin-left: 0;
        clear: both;
    }

    .vn-form .wpforms-submit,
    .vn-form button[type="submit"],
    .vn-form input[type="submit"],
    div.wpforms-container-full .wpforms-form .wpforms-submit {
        width: 100%;
    }
}



/* reCAPTCHA badge verbergen */
.grecaptcha-badge {
    visibility: hidden !important;
}