.pk-article-layout-hidden-excerpt {
    display: none !important;
}

body.pk-article-layout-test-active.single-post .entry-summary,
body.pk-article-layout-test-active.single-post .entry-excerpt,
body.pk-article-layout-test-active.single-post .post-excerpt {
    display: none !important;
}

/* Elementor: zachowujemy działający układ opływany z v0.1. */
.pk-inline-featured {
    width: min(var(--pk-article-image-width), 42vw);
    max-width: 100%;
    margin-top: .35em;
    margin-bottom: 1.15em;
    border: var(--pk-article-image-border-width) solid var(--pk-article-image-border-color);
    background: #fff;
    box-shadow: var(--pk-article-image-shadow);
    line-height: 0;
}

.pk-inline-featured--left {
    float: left;
    margin-right: var(--pk-article-image-gap);
}

.pk-inline-featured--right {
    float: right;
    margin-left: var(--pk-article-image-gap);
}

.pk-inline-featured__image {
    display: block;
    width: 100%;
    height: auto;
    max-height: var(--pk-article-image-max-height);
    object-fit: contain;
}

.pk-inline-featured-clear {
    clear: both;
    width: 100%;
    height: 0;
}

/* Gutenberg: stabilna siatka wewnątrz właściwego kontenera treści.
   Zapobiega wyrywaniu figure do lewej krawędzi viewportu przez globalne style motywu. */
.pk-inline-intro {
    display: grid;
    grid-template-columns: minmax(160px, var(--pk-article-image-width)) minmax(0, 1fr);
    gap: var(--pk-article-image-gap);
    align-items: start;
    width: 100%;
    max-width: 100%;
    margin: .45em 0 2.25em;
    clear: both;
}

.pk-inline-intro--right {
    grid-template-columns: minmax(0, 1fr) minmax(160px, var(--pk-article-image-width));
}

.pk-inline-intro--right .pk-inline-featured {
    grid-column: 2;
    grid-row: 1;
}

.pk-inline-intro--right .pk-inline-intro__content {
    grid-column: 1;
    grid-row: 1;
}

.pk-inline-intro .pk-inline-featured,
.pk-inline-intro .pk-inline-featured--left,
.pk-inline-intro .pk-inline-featured--right {
    float: none !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.pk-inline-intro__content {
    min-width: 0;
}

.pk-inline-intro__content > :first-child {
    margin-top: 0 !important;
}

.pk-inline-intro__content > :last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 782px) {
    .pk-inline-intro,
    .pk-inline-intro--right {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .pk-inline-intro--right .pk-inline-featured,
    .pk-inline-intro--right .pk-inline-intro__content {
        grid-column: 1;
        grid-row: auto;
    }
}

/* v0.3 — natywny Gutenberg jest układem referencyjnym.
   Szerokość intro jest wiązana z szerokością belki S17F, a nie z pełnym article. */
body.pk-article-layout-test-active.single-post .pk-inline-intro {
    width: min(100%, var(--pk-native-intro-width, 100%));
    max-width: var(--pk-native-intro-width, 100%);
    margin-left: auto;
    margin-right: auto;
}

/* Elementor pozostaje trybem zgodności. Wymuszamy realny odstęp,
   ponieważ część starych stylów widgetu zeruje margines figure. */
body.pk-article-layout-test-active.single-post .elementor-widget-text-editor .elementor-widget-container > .pk-inline-featured--left {
    margin: .35em var(--pk-article-image-gap) 1.35em 0 !important;
}

body.pk-article-layout-test-active.single-post .elementor-widget-text-editor .elementor-widget-container > .pk-inline-featured--right {
    margin: .35em 0 1.35em var(--pk-article-image-gap) !important;
}

@media (max-width: 782px) {
    body.pk-article-layout-test-active.single-post .pk-inline-intro {
        width: 100%;
        max-width: 100%;
    }
}

/* v0.5 — kontrolowany margines tekstu wstępu na telefonie.
   Obraz może pozostać pełnej szerokości, natomiast tekst nie dotyka krawędzi ekranu. */
@media (max-width: 782px) {
    body.pk-article-layout-test-active.single-post .pk-inline-intro__content {
        box-sizing: border-box;
        padding-left: var(--pk-article-mobile-text-padding, 15px);
        padding-right: var(--pk-article-mobile-text-padding, 15px);
    }
}
