/**
 * YOOtheme Child Theme Custom CSS
 * De Groene Kern Customizations
 * 
 * This file is automatically loaded by YOOtheme Pro
 */

/* ===== HEADING STYLES ===== */
h2.uk-heading-bullet {
    margin-left: -28px;
    font-weight: 900;
}

/* ===== CARD STYLES ===== */
.uk-card-default.uk-card-body {
    padding: 28px;
}

/* ===== ACCORDION STYLES ===== */
.uk-accordion {
    margin: -28px;
    margin-top: 0;
    margin-bottom: -28px !important;
}

.uk-accordion > :nth-child(n+2) {
    margin-top: 0px !important;
    padding-top: 0px !important;
    border-top: none !important;
}

.uk-accordion-title {
    padding: 28px;
    background: #223a34;
    border-top: 1px solid #1D312C;
}

.uk-accordion-title:hover {
    padding: 28px;
    background: #D3EA7B;
    border-top: 1px solid #1D312C;
    color: #1B2421;
}

.uk-accordion-content {
    margin-top: 0;
    padding: 28px;
    padding-bottom: 56px;
}

/* ===== LOGO STYLES ===== */
.uk-logo {
    padding: 15px 0px 15px 0px;
}

/* ===== HEADER AND NAVBAR STYLES ===== */
/* Header padding and sticky transitions */
@media (min-width: 960px) {
    :not(.uk-sticky-below) > .uk-navbar-container:not(.uk-navbar) {
        padding-bottom: 15px !important;
    }
}

/* Logo container transition */
.uk-navbar-item .uk-logo,
.uk-logo {
    transition: padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Logo image transition */
.uk-navbar-item .uk-logo img,
.uk-navbar-item .uk-logo svg,
.uk-logo img {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), margin 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transform-origin: center center;
    display: inline-block;
    transform: scale(1);
}

/* When sticky, adjust logo container padding */
.uk-sticky-below .uk-navbar-item .uk-logo,
.uk-sticky-below .uk-logo {
    padding: 10px !important;
}

/* Scale down logo image when uk-sticky-below class is present */
.uk-sticky-below .uk-logo img,
.uk-sticky-below .uk-navbar-item .uk-logo img {
    transform: scale(0.8) !important;
    /* Compensate for center scaling by adding negative margin to keep left aligned */
    margin-left: -18px !important; /* 180px * 0.2 * 0.5 = -18px */
    margin-right: -18px !important;
}

/* Navbar container transition */
.uk-navbar-container {
    transition: padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Adjust padding when sticky */
.uk-sticky-below .uk-navbar-container {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

/* Also scale down if logo is text-based */
.uk-sticky-below .uk-navbar-item .uk-logo {
    font-size: 0.85em;
    transition: font-size 0.3s ease-in-out;
}

.uk-grid-divider>:not(.uk-first-column)::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    border-left: 1px solid #3b4d47;
}

.uk-grid-divider.uk-grid-stack>.uk-grid-margin::before {
    border-top: 1px solid #3b4d47;
}