/*
 * RankHero Visual System 1.1.7
 * Globalne tokeny i bezpieczne nadpisania wspólnych komponentów.
 */

body.rankhero-visual-system-enabled {
    --rh-color-navy: #08224a;
    --rh-color-ink: #101827;
    --rh-color-muted: #536173;
    --rh-color-accent: #efa81a;
    --rh-color-accent-strong: #d88f00;
    --rh-color-surface: #ffffff;
    --rh-color-surface-soft: #f4f7fb;
    --rh-color-border: rgba(123, 142, 166, 0.28);
    --rh-container-wide: 1180px;
    --rh-container-copy: 800px;
    --rh-container-narrow: 680px;
    --rh-gutter: 32px;
    --rh-space-1: 4px;
    --rh-space-2: 8px;
    --rh-space-3: 12px;
    --rh-space-4: 16px;
    --rh-space-5: 24px;
    --rh-space-6: 32px;
    --rh-space-7: 48px;
    --rh-space-8: 64px;
    --rh-space-9: 80px;
    --rh-space-10: 96px;
    --rh-radius-small: 8px;
    --rh-radius-medium: 12px;
    --rh-radius-large: 16px;
    --rh-shadow-card: 0 16px 42px rgba(15, 23, 42, 0.08);
    --rh-focus-ring: 0 0 0 3px rgba(239, 168, 26, 0.42);
    --rh-home-section-space: 96px;
    --rh-home-blog-space: 80px;
    --rh-home-blog-columns: repeat(3, minmax(0, 1fr));
}

body.rankhero-visual-system-enabled *,
body.rankhero-visual-system-enabled *::before,
body.rankhero-visual-system-enabled *::after {
    box-sizing: border-box;
}

body.rankhero-visual-system-enabled :where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 2px solid var(--rh-color-accent-strong) !important;
    outline-offset: 3px !important;
    box-shadow: var(--rh-focus-ring);
}

body.rankhero-visual-system-enabled :where(.pagination, .fusion-pagination, .page-numbers) a,
body.rankhero-visual-system-enabled :where(.pagination, .fusion-pagination) button {
    min-width: 44px;
    min-height: 44px;
}

/* Czytelna kolumna dla treści prozatorskiej. Moduły, grafiki i tabele zachowują szeroki rail. */
body.rankhero-visual-system-enabled:is(.rankhero-ai-blog-post, .rankhero-ai-problem-path, .rankhero-ai-structure-page)
    .rankhero-ai-content
    > :where(p, ul, ol, h2, h3, h4, blockquote) {
    width: min(var(--rh-container-copy), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: min(var(--rh-container-copy), calc(100vw - (2 * var(--rh-gutter)))) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.rankhero-visual-system-enabled:is(.rankhero-ai-blog-post, .rankhero-ai-problem-path, .rankhero-ai-structure-page)
    .rankhero-ai-content
    > :where(p, ul, ol, blockquote),
body.rankhero-visual-system-enabled:is(.rankhero-ai-blog-post, .rankhero-ai-problem-path, .rankhero-ai-structure-page)
    .rankhero-ai-content
    > :where(p, ul, ol, blockquote) :where(li, p) {
    font-size: 17px !important;
    line-height: 1.7 !important;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page
    .rankhero-ai-content
    > :where(p, ul:not([class]), ol:not([class]), blockquote) {
    color: var(--body_typography-color, #ffffff) !important;
}

/* Treść stron usługowych korzysta z tej samej lewej i prawej osi co grafika hero. */
body.rankhero-visual-system-enabled.rankhero-ai-structure-page
    .rankhero-ai-content
    > :where(p, ul, ol, h2, h3, h4, blockquote) {
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: var(--rh-container-wide) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

/*
 * Wpisy blogowe mają jeden wspólny rail. Generator treści dodaje własne
 * szerokości, marginesy i translateX do modułów, przez co proza, hero, TOC,
 * callouty, CTA oraz tabele zaczynają się na różnych osiach. Normalizacja
 * bez zależności od kolejności bloków obejmuje również przyszłe artykuły.
 */
html body.wp-singular.single.single-post.post-template-default.rankhero-ai-blog-post.rankhero-visual-system-enabled
    .rankhero-ai-content.rankhero-ai-content
    > :where(p, ul, ol, h2, h3, h4, blockquote, figure, nav, section, div) {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    transform: none !important;
}

body.rankhero-visual-system-enabled .rankhero-ai-content > h2 {
    margin-top: var(--rh-space-8) !important;
    margin-bottom: var(--rh-space-5) !important;
    font-size: clamp(32px, 3vw, 40px) !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
    text-wrap: balance;
}

body.rankhero-visual-system-enabled .rankhero-ai-content > h3 {
    margin-top: var(--rh-space-7) !important;
    margin-bottom: var(--rh-space-4) !important;
    font-size: clamp(23px, 2vw, 27px) !important;
    font-weight: 850 !important;
    line-height: 1.24 !important;
    text-wrap: balance;
}

body.rankhero-visual-system-enabled .rankhero-ai-content > :where(p, ul, ol) {
    margin-bottom: var(--rh-space-5) !important;
}

/* Dostępna wskazówka i czytelny kontener dla szerokich tabel. */
.rankhero-vs-table-hint {
    display: none;
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter))));
    margin: var(--rh-space-4) auto var(--rh-space-3);
    padding: 12px 14px;
    color: var(--rh-color-navy);
    background: var(--rh-color-surface-soft);
    border-left: 4px solid var(--rh-color-accent);
    border-radius: var(--rh-radius-small);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
}

.rankhero-vs-table-region {
    position: relative;
    max-width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-inline: contain;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
}

.rankhero-vs-table-region:focus-visible {
    border-radius: var(--rh-radius-small);
}

/* Wspólny rail i skala nagłówków dla huba i wszystkich kalkulatorów. */
body.rankhero-visual-system-enabled :is(
    .rankhero-calculators-hub,
    [data-rankhero-roas-calculator],
    [data-rankhero-cac-calculator],
    [data-rankhero-cpl-calculator],
    [data-rankhero-lv-calculator],
    [data-rankhero-dm-calculator],
    [data-rankhero-lpcr-calculator],
    [data-rankhero-ecp-calculator],
    [data-rankhero-ltv-calculator],
    [data-rankhero-gads-budget-calculator],
    [data-rankhero-pinterestads-calculator],
    [data-rankhero-tiktokads-calculator],
    [data-rankhero-metaads-calculator],
    [data-rankhero-linkedinads-calculator],
    [data-rankhero-seoroi-calculator],
    [data-rankhero-seotp-calculator]
) {
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: var(--rh-container-wide);
    margin-inline: auto !important;
}

body.rankhero-visual-system-enabled :is(
    .rankhero-calculators-hub,
    [data-rankhero-roas-calculator],
    [data-rankhero-cac-calculator],
    [data-rankhero-cpl-calculator],
    [data-rankhero-lv-calculator],
    [data-rankhero-dm-calculator],
    [data-rankhero-lpcr-calculator],
    [data-rankhero-ecp-calculator],
    [data-rankhero-ltv-calculator],
    [data-rankhero-gads-budget-calculator],
    [data-rankhero-pinterestads-calculator],
    [data-rankhero-tiktokads-calculator],
    [data-rankhero-metaads-calculator],
    [data-rankhero-linkedinads-calculator],
    [data-rankhero-seoroi-calculator],
    [data-rankhero-seotp-calculator]
) .rankhero-calculator-title {
    font-size: clamp(38px, 4vw, 56px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.025em !important;
    text-wrap: balance;
}

body.rankhero-visual-system-enabled :is(
    .rankhero-calculators-hub,
    [data-rankhero-roas-calculator],
    [data-rankhero-cac-calculator],
    [data-rankhero-cpl-calculator],
    [data-rankhero-lv-calculator],
    [data-rankhero-dm-calculator],
    [data-rankhero-lpcr-calculator],
    [data-rankhero-ecp-calculator],
    [data-rankhero-ltv-calculator],
    [data-rankhero-gads-budget-calculator],
    [data-rankhero-pinterestads-calculator],
    [data-rankhero-tiktokads-calculator],
    [data-rankhero-metaads-calculator],
    [data-rankhero-linkedinads-calculator],
    [data-rankhero-seoroi-calculator],
    [data-rankhero-seotp-calculator]
) :where(h2) {
    font-size: clamp(29px, 3vw, 40px) !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
    text-wrap: balance;
}

body.rankhero-visual-system-enabled :is(
    .rankhero-calculators-hub,
    [data-rankhero-roas-calculator],
    [data-rankhero-cac-calculator],
    [data-rankhero-cpl-calculator],
    [data-rankhero-lv-calculator],
    [data-rankhero-dm-calculator],
    [data-rankhero-lpcr-calculator],
    [data-rankhero-ecp-calculator],
    [data-rankhero-ltv-calculator],
    [data-rankhero-gads-budget-calculator],
    [data-rankhero-pinterestads-calculator],
    [data-rankhero-tiktokads-calculator],
    [data-rankhero-metaads-calculator],
    [data-rankhero-linkedinads-calculator],
    [data-rankhero-seoroi-calculator],
    [data-rankhero-seotp-calculator]
) :where(a[class*="button"], button, input, select) {
    min-height: 48px;
}

body.rankhero-visual-system-enabled :is(
    .rankhero-calculators-hub__hero,
    [data-rankhero-roas-calculator] > [class$="__hero"],
    [data-rankhero-cac-calculator] > [class$="__hero"],
    [data-rankhero-cpl-calculator] > [class$="__hero"],
    [data-rankhero-lv-calculator] > [class$="__hero"],
    [data-rankhero-dm-calculator] > [class$="__hero"],
    [data-rankhero-lpcr-calculator] > [class$="__hero"],
    [data-rankhero-ecp-calculator] > [class$="__hero"],
    [data-rankhero-ltv-calculator] > [class$="__hero"],
    [data-rankhero-gads-budget-calculator] > [class$="__hero"],
    [data-rankhero-pinterestads-calculator] > [class$="__hero"],
    [data-rankhero-tiktokads-calculator] > [class$="__hero"],
    [data-rankhero-metaads-calculator] > [class$="__hero"],
    [data-rankhero-linkedinads-calculator] > [class$="__hero"],
    [data-rankhero-seoroi-calculator] > [class$="__hero"],
    [data-rankhero-seotp-calculator] > [class$="__hero"]
) {
    border-radius: var(--rh-radius-large);
    overflow: hidden;
}

@media (max-width: 900px) {
    body.rankhero-visual-system-enabled {
        --rh-gutter: 24px;
    }

    body.rankhero-visual-system-enabled :is(
        .rankhero-calculators-hub,
        [data-rankhero-roas-calculator],
        [data-rankhero-cac-calculator],
        [data-rankhero-cpl-calculator],
        [data-rankhero-lv-calculator],
        [data-rankhero-dm-calculator],
        [data-rankhero-lpcr-calculator],
        [data-rankhero-ecp-calculator],
        [data-rankhero-ltv-calculator],
        [data-rankhero-gads-budget-calculator],
        [data-rankhero-pinterestads-calculator],
        [data-rankhero-tiktokads-calculator],
        [data-rankhero-metaads-calculator],
        [data-rankhero-linkedinads-calculator],
        [data-rankhero-seoroi-calculator],
        [data-rankhero-seotp-calculator]
    ) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-top: var(--rh-space-5) !important;
    }
}

@media (max-width: 782px) {
    body.rankhero-visual-system-enabled {
        --rh-gutter: 18px;
        --rh-home-section-space: 64px;
        --rh-home-blog-space: 64px;
    }

    body.rankhero-visual-system-enabled:is(.rankhero-ai-blog-post, .rankhero-ai-problem-path, .rankhero-ai-structure-page)
        .rankhero-ai-content
        > :where(p, ul, ol, blockquote),
    body.rankhero-visual-system-enabled:is(.rankhero-ai-blog-post, .rankhero-ai-problem-path, .rankhero-ai-structure-page)
        .rankhero-ai-content
        > :where(p, ul, ol, blockquote) :where(li, p) {
        font-size: 16px !important;
        line-height: 1.68 !important;
    }

    body.rankhero-visual-system-enabled .rankhero-ai-content > h2 {
        margin-top: var(--rh-space-7) !important;
        margin-bottom: var(--rh-space-4) !important;
        font-size: clamp(28px, 8vw, 32px) !important;
    }

    body.rankhero-visual-system-enabled .rankhero-ai-content > h3 {
        margin-top: var(--rh-space-6) !important;
        font-size: clamp(22px, 6.5vw, 25px) !important;
    }

    .rankhero-vs-table-hint.is-visible {
        display: flex;
        align-items: center;
        gap: var(--rh-space-2);
    }

    .rankhero-vs-table-hint.is-visible::before {
        content: "↔";
        color: var(--rh-color-accent-strong);
        font-size: 20px;
        line-height: 1;
    }

    .rankhero-vs-table-region {
        width: calc(100vw - (2 * var(--rh-gutter))) !important;
        max-width: calc(100vw - (2 * var(--rh-gutter))) !important;
        margin-right: auto !important;
        margin-left: auto !important;
        border: 1px solid var(--rh-color-border);
        border-radius: var(--rh-radius-medium) !important;
        box-shadow: var(--rh-shadow-card);
    }

    .rankhero-vs-table-region.is-scrollable {
        background:
            linear-gradient(to right, var(--rh-color-surface) 30%, transparent),
            linear-gradient(to left, rgba(8, 34, 74, 0.14), transparent 22px);
        background-attachment: local, scroll;
    }

    body.rankhero-visual-system-enabled :is(
        .rankhero-calculators-hub,
        [data-rankhero-roas-calculator],
        [data-rankhero-cac-calculator],
        [data-rankhero-cpl-calculator],
        [data-rankhero-lv-calculator],
        [data-rankhero-dm-calculator],
        [data-rankhero-lpcr-calculator],
        [data-rankhero-ecp-calculator],
        [data-rankhero-ltv-calculator],
        [data-rankhero-gads-budget-calculator],
        [data-rankhero-pinterestads-calculator],
        [data-rankhero-tiktokads-calculator],
        [data-rankhero-metaads-calculator],
        [data-rankhero-linkedinads-calculator],
        [data-rankhero-seoroi-calculator],
        [data-rankhero-seotp-calculator]
    ) .rankhero-calculator-title {
        font-size: clamp(34px, 10vw, 40px) !important;
        line-height: 1.08 !important;
    }
}

@media (max-width: 620px) {
    body.rankhero-visual-system-enabled {
        --rh-gutter: 16px;
    }

    body.rankhero-visual-system-enabled :is(
        .rankhero-calculators-hub,
        [data-rankhero-roas-calculator],
        [data-rankhero-cac-calculator],
        [data-rankhero-cpl-calculator],
        [data-rankhero-lv-calculator],
        [data-rankhero-dm-calculator],
        [data-rankhero-lpcr-calculator],
        [data-rankhero-ecp-calculator],
        [data-rankhero-ltv-calculator],
        [data-rankhero-gads-budget-calculator],
        [data-rankhero-pinterestads-calculator],
        [data-rankhero-tiktokads-calculator],
        [data-rankhero-metaads-calculator],
        [data-rankhero-linkedinads-calculator],
        [data-rankhero-seoroi-calculator],
        [data-rankhero-seotp-calculator]
    ) :where(
        [class$="__hero"],
        [class$="__content"],
        [class$="__intro"],
        [class$="__form"],
        [class$="__formula"],
        [class$="__cta"],
        [class$="__grid"] > article,
        [class$="__results"] > article
    ) {
        padding: 20px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.rankhero-visual-system-enabled *,
    body.rankhero-visual-system-enabled *::before,
    body.rankhero-visual-system-enabled *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* Strony usługowe: jedno widoczne H1, spójne moduły i spokojniejszy rytm treści. */
html body.rankhero-visual-system-enabled.rankhero-ai-structure-page figure.rankhero-structure-visual {
    overflow: hidden;
    border: 1px solid var(--rh-color-border) !important;
    border-top: 4px solid var(--rh-color-accent) !important;
    border-radius: var(--rh-radius-large) !important;
    box-shadow: var(--rh-shadow-card) !important;
}

html body.rankhero-visual-system-enabled.rankhero-ai-structure-page
    .rankhero-structure-visual .rankhero-structure-visual__caption
    h1.rankhero-structure-visual__title {
    display: block !important;
    margin: var(--rh-space-2) 0 var(--rh-space-4) !important;
    color: var(--rh-color-ink) !important;
    font-family: "Readex Pro", Arial, Helvetica, sans-serif !important;
    font-size: clamp(38px, 4vw, 52px) !important;
    font-weight: 850 !important;
    line-height: 1.06 !important;
    letter-spacing: -0.035em !important;
    text-wrap: balance;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page .rankhero-ai-content > :is(
    .rankhero-content-section,
    .rankhero-feature-grid,
    .rankhero-step-list,
    .rankhero-faq,
    .rankhero-related-blog-posts
) {
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: var(--rh-container-wide) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page .rankhero-ai-content > :is(
    .rankhero-cta,
    .rankhero-callout
) {
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: var(--rh-container-wide) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page .rankhero-ai-content > :is(
    .rankhero-cta,
    .rankhero-callout
) {
    padding: var(--rh-space-6) !important;
    border: 1px solid var(--rh-color-border) !important;
    border-left: 5px solid var(--rh-color-accent) !important;
    border-radius: var(--rh-radius-medium) !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06) !important;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page :is(
    .rankhero-feature-grid > *,
    .rankhero-step-list > li,
    .rankhero-faq > *
) {
    border-radius: var(--rh-radius-medium) !important;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page .rankhero-step-list > li {
    padding: var(--rh-space-5) !important;
    border: 1px solid var(--rh-color-border) !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05) !important;
}

/* Rozbudowany katalog linków nie powinien dominować nad właściwą treścią usługi. */
body.rankhero-visual-system-enabled.rankhero-ai-structure-page
    .rankhero-local-links--audience-single:not(.is-expanded)
    .rankhero-local-links__grid li:nth-child(n + 13) {
    display: none !important;
}

body.rankhero-visual-system-enabled.rankhero-ai-structure-page
    .rankhero-local-links--audience-single.is-expanded
    .rankhero-local-links__grid li {
    display: list-item !important;
}

.rankhero-vs-directory-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin-top: var(--rh-space-5);
    padding: 12px 20px;
    color: var(--rh-color-navy);
    background: var(--rh-color-surface);
    border: 2px solid var(--rh-color-accent);
    border-radius: var(--rh-radius-small);
    font: inherit;
    font-weight: 800;
    line-height: 1.2;
    cursor: pointer;
}

/* Formularz pozostaje dostępny, ale nie może zasłaniać całego ekranu telefonu. */
body.rankhero-visual-system-enabled .rankhero-floating-lead__panel {
    max-height: calc(100dvh - 24px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
}

@media (max-width: 782px) {
    html body.rankhero-visual-system-enabled.rankhero-ai-structure-page
        .rankhero-structure-visual .rankhero-structure-visual__caption
        h1.rankhero-structure-visual__title {
        font-size: clamp(32px, 9vw, 38px) !important;
    }

    body.rankhero-visual-system-enabled.rankhero-ai-structure-page .rankhero-ai-content > :is(
        .rankhero-cta,
        .rankhero-callout
    ) {
        padding: var(--rh-space-5) !important;
    }

    body.rankhero-visual-system-enabled.rankhero-ai-structure-page
        .rankhero-local-links--audience-single:not(.is-expanded)
        .rankhero-local-links__grid li:nth-child(n + 6) {
        display: none !important;
    }

    body.rankhero-visual-system-enabled .rankhero-floating-lead__panel {
        inset: auto 12px 12px !important;
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
    }
}

/* --------------------------------------------------------------------------
 * 1.1.0 - Strona główna: hero, rytm sekcji i wspólny system kart
 * -------------------------------------------------------------------------- */

html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-title h1.fusion-title-heading {
    width: min(920px, calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: 920px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    color: #12162d !important;
    font-family: "Readex Pro", Arial, Helvetica, sans-serif !important;
    font-size: clamp(44px, 4.2vw, 58px) !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
    text-wrap: balance;
}

/* Obecny builder powtarza tekst H1 jako pierwszy akapit. */
html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-text > p:first-child {
    display: none !important;
}

html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-text {
    width: min(800px, calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: 800px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-text > p {
    margin: 0 !important;
    color: #20263a !important;
    font-size: 18px !important;
    line-height: 1.65 !important;
}

html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-button {
    min-height: 56px !important;
    padding: 16px 28px !important;
    border-radius: var(--rh-radius-small) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

body.rankhero-visual-system-enabled.home .post-content > .fusion-fullwidth h2.fusion-title-heading,
body.rankhero-visual-system-enabled.home .rankhero-home-problems__header h2 {
    font-family: "Readex Pro", Arial, Helvetica, sans-serif !important;
    font-size: clamp(34px, 3.2vw, 42px) !important;
    font-weight: 800 !important;
    line-height: 1.14 !important;
    letter-spacing: -0.025em !important;
    text-wrap: balance;
}

body.rankhero-visual-system-enabled.home :is(
    .fusion-builder-row-3,
    .fusion-builder-row-4,
    .fusion-builder-row-5
) {
    --awb-padding-top: var(--rh-home-section-space) !important;
    --awb-padding-bottom: var(--rh-home-section-space) !important;
    padding-top: var(--rh-home-section-space) !important;
    padding-bottom: var(--rh-home-section-space) !important;
}

/* Sekcja bloga musi rosnąć razem z kartami - bez stałej wysokości Avady. */
body.rankhero-visual-system-enabled.home .fusion-builder-row-8 {
    --awb-padding-top: var(--rh-home-blog-space) !important;
    --awb-padding-bottom: var(--rh-home-blog-space) !important;
    height: auto !important;
    min-height: 0 !important;
    padding-top: var(--rh-home-blog-space) !important;
    padding-bottom: var(--rh-home-blog-space) !important;
    overflow: visible !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8 > .fusion-builder-row {
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: var(--rh-container-wide) !important;
    height: auto !important;
    min-height: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
    overflow: visible !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8 :is(
    .fusion-post-cards:has(.rankhero-post-visual),
    .fusion-post-cards:has(.rankhero-post-visual) .fusion-grid
) {
    display: grid !important;
    grid-template-columns: var(--rh-home-blog-columns) !important;
    align-items: stretch !important;
    gap: var(--rh-space-5) !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual) {
    display: block !important;
    grid-template-columns: none !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    .rankhero-ai-content {
    display: flex !important;
    min-width: 0 !important;
    height: 100% !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    .rankhero-post-visual {
    display: flex !important;
    grid-template-columns: minmax(0, 1fr) !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 100% !important;
    border: 1px solid var(--rh-color-border) !important;
    border-top: 4px solid var(--rh-color-accent) !important;
    border-radius: var(--rh-radius-large) !important;
    box-shadow: var(--rh-shadow-card) !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    :is(.rankhero-post-visual__media, .rankhero-post-visual__img) {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    .rankhero-post-visual__caption {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: var(--rh-space-5) !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    :is(.rankhero-post-visual__title, .rankhero-post-visual__caption > strong) {
    font-size: clamp(21px, 1.7vw, 25px) !important;
    line-height: 1.22 !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    .rankhero-post-visual__caption p {
    font-size: 15px !important;
    line-height: 1.62 !important;
}

body.rankhero-visual-system-enabled.home .fusion-builder-row-8
    .fusion-post-cards:has(.rankhero-post-visual)
    .rankhero-post-visual__read-more {
    margin-top: auto !important;
}

body.rankhero-visual-system-enabled.home .rankhero-home-problems {
    padding-top: var(--rh-space-9) !important;
    padding-bottom: var(--rh-space-9) !important;
}

body.rankhero-visual-system-enabled.home :is(
    .rankhero-home-problems__header,
    .rankhero-home-problems__grid
) {
    width: min(var(--rh-container-wide), calc(100vw - (2 * var(--rh-gutter)))) !important;
    max-width: var(--rh-container-wide) !important;
}

body.rankhero-visual-system-enabled.home .rankhero-home-problems__header {
    margin-bottom: var(--rh-space-7) !important;
}

body.rankhero-visual-system-enabled.home .rankhero-home-problems__grid {
    gap: var(--rh-space-5) !important;
}

body.rankhero-visual-system-enabled.home .rankhero-home-problems__item .rankhero-post-visual {
    border: 1px solid var(--rh-color-border) !important;
    border-top: 4px solid var(--rh-color-accent) !important;
    border-radius: var(--rh-radius-large) !important;
    box-shadow: var(--rh-shadow-card) !important;
}

body.rankhero-visual-system-enabled.home .rankhero-home-problems__item .rankhero-post-visual__caption {
    padding: var(--rh-space-5) !important;
}

@media (max-width: 1024px) {
    body.rankhero-visual-system-enabled {
        --rh-home-blog-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-title h1.fusion-title-heading {
        font-size: clamp(36px, 10.5vw, 44px) !important;
        line-height: 1.1 !important;
    }

    html body.rankhero-visual-system-enabled.home .fusion-builder-row-2 .fusion-text > p {
        font-size: 17px !important;
        line-height: 1.6 !important;
    }

    body.rankhero-visual-system-enabled.home :is(
        .fusion-builder-row-3,
        .fusion-builder-row-4,
        .fusion-builder-row-5,
        .fusion-builder-row-8,
        .rankhero-home-problems
    ) {
        --awb-padding-top: var(--rh-home-section-space) !important;
        --awb-padding-bottom: var(--rh-home-section-space) !important;
        padding-top: var(--rh-home-section-space) !important;
        padding-bottom: var(--rh-home-section-space) !important;
    }

    body.rankhero-visual-system-enabled.home .post-content > .fusion-fullwidth h2.fusion-title-heading,
    body.rankhero-visual-system-enabled.home .rankhero-home-problems__header h2 {
        font-size: clamp(29px, 8.5vw, 34px) !important;
    }
}

@media (max-width: 680px) {
    body.rankhero-visual-system-enabled {
        --rh-home-blog-columns: minmax(0, 1fr);
    }

    body.rankhero-visual-system-enabled.home .fusion-builder-row-8
        .fusion-post-cards:has(.rankhero-post-visual)
        .rankhero-post-visual__caption,
    body.rankhero-visual-system-enabled.home .rankhero-home-problems__item .rankhero-post-visual__caption {
        padding: 20px !important;
    }
}
