/*
 * Home v2 – hover-details die Elementor niet native kan (child-state op parent-hover).
 * Gescoped op classes die in de Elementor-loop-templates zijn gezet.
 */
.vh-cat-card {
    & .vh-cat-arrow {
        transition: transform .18s ease;

        & .elementor-icon {
            transition: background-color .18s ease, color .18s ease;
        }
    }

    &:hover {
        border-color: rgba(234, 124, 44, .35) !important;

        & .vh-cat-arrow {
            transform: translateX(3px);

            & .elementor-icon {
                background-color: #FF8F09 !important;
                color: #201007 !important;
                fill: #201007 !important;
            }
        }
    }
}


/* USP-carousel (module awcf_usps_carousel) in huisstijl-font */
.awcf-usps-carousel-wrapper {
    --awcf-usps-font-family: "Public Sans", sans-serif;
}

/* Google Reviews (shortcodes awcf_google_score / awcf_google_reviews) */
.aw-greviews__score,
.aw-greviews__grid {
    font-family: "Public Sans", sans-serif;
}

.aw-greviews__stars { display: inline-flex; gap: 2px; vertical-align: middle; }
.aw-greviews__score {
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;

    & .aw-greviews__score-text { font-size: 14px; font-weight: 600; font-style: italic; color: #5F5148; }
}
.aw-greviews__grid {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px;

    @media (max-width: 1024px) { grid-template-columns: 1fr; }
}
.aw-greviews__card {
    border: 1px solid #E8DDCE; border-radius: 16px; padding: 24px; background: #fff;
    display: flex; flex-direction: column; gap: 12px;

    & .aw-greviews__text { font-size: 14.5px; line-height: 1.6; color: #5F5148; font-style: italic; margin: 0; flex-grow: 1; }
    & .aw-greviews__name { font-size: 13.5px; font-weight: 700; color: #241A15;
        & span { font-weight: 500; color: #5F5148; }
    }
}


/*
 * Breakdance Zero reset de browser-marges niet; in Elementor-content geeft dat extra
 * witruimte (p = 16px boven/onder, iconbox-titel 17px boven). Alleen Elementor-widgets.
 */
.elementor-widget-text-editor p {
    margin-top: 0;
    margin-bottom: .8em;

    &:last-child {
        margin-bottom: 0;
    }
}

.elementor-icon-box-title {
    margin-top: 0;
}

/* Merkenstrip: logo's in grijs, witte achtergrond van jpg's wegvallend */
.vh-merklogo img {
    width: auto !important;
    max-width: 170px;
    filter: grayscale(1);
    opacity: .55;
    mix-blend-mode: multiply;
    transition: opacity .2s ease, filter .2s ease;

    &:hover {
        filter: none;
        opacity: 1;
    }
}

/* Lichte outline-knop op donkere/beeld-achtergrond: frosted glass (ontwerp vh-btn-outline-light) */
.vh-btn-glass .elementor-button {
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}
