/* Structural modifiers reflect content layout, replacing per-element style settings. */
.kk-home .kk-row--full {
    width: 100%;
    max-width: none;
}

.kk-home .kk-row .kk-row {
    width: 100%;
    max-width: none;
}

.kk-home .kk-row--halves > .x-row-inner,.kk-home .kk-row--thirds > .x-row-inner,.kk-home .kk-row--stats > .x-row-inner {
    display: grid;
    gap: 4%;
}

.kk-home .kk-row--halves > .x-row-inner {
    grid-template-columns: repeat(2,minmax(0,1fr));
}

.kk-home .kk-row--thirds > .x-row-inner {
    grid-template-columns: repeat(3,minmax(0,1fr));
}

.kk-home .kk-row--stats > .x-row-inner {
    grid-template-columns: 2fr repeat(4,minmax(0,1fr));
    gap: 0;
    align-items: center;
}

.kk-home .kk-section--hero,.kk-home .kk-section--products,.kk-home .kk-section--showroom,.kk-home .kk-section--stats {
    padding: 0;
}

.kk-home .kk-section--intro,.kk-home .kk-section--magazine {
    min-height: 100vh;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.kk-home .kk-section--intro {
    background-image: url("../images/kk-intro.jpg");
}

.kk-home .kk-section--magazine {
    background-image: url("../images/kk-magazine.jpg");
}

.kk-home .kk-section--intro .kk-heading--section,.kk-home .kk-section--magazine .kk-heading--section {
    width: 90%;
    margin: 0 auto;
}

.kk-home .kk-section--products .kk-row,.kk-home .kk-section--products .kk-row > .x-row-inner {
    width: 100%;
    max-width: none;
    gap: 0;
}

.kk-home .kk-section--products .kk-image,.kk-home .kk-section--products .kk-image img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
}

.kk-home .kk-section--showroom {
    min-height: 100vh;
    background: #000;
}

.kk-home .kk-row--showroom-link {
    padding-bottom: 50px;
}

.kk-home .kk-section--team {
    padding: 80px 0 105px;
    background: #fff;
}

.kk-home .kk-section--team .kk-row--thirds + .kk-row--thirds {
    margin-top: 0;
}

.kk-home .kk-portrait {
    width: 250px;
    border-radius: 50%;
    overflow: hidden;
}

.kk-home .kk-portrait img {
    border-radius: inherit;
}

.kk-home .kk-section--team .kk-panel {
    background: var(--kk-panel-background);
}

.kk-home .kk-section--stats {
    background: #000;
    color: #fff;
}

.kk-home .kk-stat-column {
    padding: 50px;
}

/* The editor owns the media selection; KK owns the core gallery's presentation. */
.kk-home .kk-section--inspiration {
    min-height: 100vh;
    background: #292622 url("../images/kk-inspiration.jpg") center / cover no-repeat;
    background-attachment: fixed;
}

.kk-home .kk-row--inspiration {
    width: 90%;
    max-width: 1200px;
}

.kk-home .kk-section--inspiration .gallery {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    clear: both;
    margin: 0;
    padding: 0;
}

.kk-home .kk-section--inspiration .gallery-item {
    float: none;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    text-align: center;
}

.kk-home .kk-section--inspiration .gallery-icon {
    margin: 0;
}

.kk-home .kk-section--inspiration .gallery-icon a {
    display: block;
    aspect-ratio: 1;
    overflow: hidden;
}

.kk-home .kk-section--inspiration .gallery-icon img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    border: 0;
    object-fit: cover;
}

.kk-home .kk-section--inspiration :is(br, .gallery-caption) {
    display: none;
}

@media (max-width: 1000px) {
    .kk-home .kk-section--inspiration .gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 690px) {
    .kk-home .kk-section--inspiration .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kk-home .kk-section--inspiration {
        background-attachment: scroll;
    }
}

@media (max-width: 480px) {
    .kk-home .kk-section--inspiration .gallery {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 1100px) {
    .kk-home .kk-stat-column {
        padding: 25px 12px;
    }
}

@media (max-width: 767px) {
    .kk-home .kk-row--halves > .x-row-inner,.kk-home .kk-row--thirds > .x-row-inner,.kk-home .kk-row--stats > .x-row-inner {
        grid-template-columns: minmax(0,1fr);
        gap: 24px;
    }
    .kk-home .kk-section--intro,.kk-home .kk-section--magazine {
        background-attachment: scroll;
    }
    .kk-home .kk-section--intro .kk-column:empty {
        display: none;
    }
    .kk-home .kk-section--team .kk-row--thirds + .kk-row--thirds {
        margin-top: 24px;
    }
}
