    .rcu-page {
        background: #fff;
    }

    /* clamp(minimum, wartoĹ›Ä‡ responsywna, maksimum)
    min  â†’ nigdy mniej
    vw   â†’ wartoĹ›Ä‡ responsywna
    max  â†’ nigdy wiÄ™cej    
    */
    .rcu-subhero {
        padding-top: clamp(7rem, 12vw, 11rem);
        padding-bottom: clamp(4rem, 8vw, 7rem);
    }

    .rcu-subhero_grid {
        display: grid;
        grid-template-columns: minmax(0, 1.15fr) minmax(18rem, .85fr);
        gap: clamp(2rem, 5vw, 5rem);
        align-items: end;
    }

    .rcu-subhero_content {
        max-width: 58rem;
    }

    /* NadtytuĹ‚ Hero i sekcji */
    .rcu-eyebrow {
        margin: 0 0 1rem;
        color: #ed1c24;
        font-size: .875rem;
        font-weight: 700;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .rcu-subhero_panel,
    .rcu-feature_card {
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: #fff;
        padding: clamp(1.25rem, 3vw, 2rem);
        box-shadow: 0 18px 50px rgba(0, 0, 0, .06);
    }

    .rcu-panel_number {
        margin: 0 0 .5rem;
        font-size: clamp(3rem, 7vw, 5.5rem);
        line-height: .9;
        font-weight: 700;
        letter-spacing: -.04em;
    }

    .rcu-feature_grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1rem;
    }

    /* Siatka 3 kart (Desktop: 3 kolumny, Tablet/Mobile: 1 kolumna) */
    @media screen and (max-width: 991px) {

        .rcu-subhero_grid,
        .rcu-feature_grid {
            grid-template-columns: 1fr;
        }
    }

    /* Mobile (<=767px) â€“ korekta odstÄ™pu Hero */
    @media screen and (max-width: 767px) {
        .rcu-subhero {
            padding-top: 6rem;
        }
    }

    /* Standardowy odstÄ™p sekcji podstron */
    .rcu-about-section {
        /* OdstÄ™p od gĂłry:
       minimum: 4rem (64px)
       preferowana wartoĹ›Ä‡: 7% szerokoĹ›ci okna
       maksimum: 6.5rem (104px)
    */
        padding-top: clamp(4rem, 7vw, 6.5rem);
        /* OdstÄ™p od doĹ‚u:
       minimum: 4rem (64px)
       preferowana wartoĹ›Ä‡: 7% szerokoĹ›ci okna
       maksimum: 6.5rem (104px)
    */
        padding-bottom: clamp(4rem, 7vw, 6.5rem);
    }

    /* Pierwsza sekcja po Hero â€“ bez gĂłrnego odstÄ™pu */
    .rcu-about-section.is-first {
        padding-top: 0;
    }


    .rcu-about-section.is-muted {
        background: #f7f7f8;
    }

    /* UkĹ‚ad 2 kolumn: tekst + zdjÄ™cie */
    .rcu-about-text_grid,
    .rcu-about-story {
        display: grid;
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
        gap: clamp(2rem, 5vw, 5rem);
        align-items: start;
    }

    .rcu-about-copy {
        display: grid;
        gap: 1rem;
    }

    .rcu-about-story {
        align-items: center;
    }

    .rcu-about-story_side {
        display: grid;
        gap: 1.625rem;
    }

    .rcu-about-story_image {
        width: 100%;
        aspect-ratio: 16 / 9;
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        object-fit: cover;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .05);
    }

    .rcu-agent-wide-media {
        width: 100%;
        overflow: hidden;
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: #f4f4f5;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .05);
    }

    .rcu-agent-wide-media_img {
        display: block;
        width: 100%;
        height: clamp(13rem, 24vw, 25rem);
        object-fit: cover;
        object-position: center;
    }

    @media screen and (max-width: 767px) {
        .rcu-agent-wide-media_img {
            height: 13rem;
            object-position: 70% center;
        }
    }

    .rcu-about-story_content {
        max-width: 44rem;
    }

    /* Siatka kart z kluczowymi liczbami firmy */
    .rcu-about-stats {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1rem;
    }

    .rcu-about-stat {
        min-height: 8.25rem;
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: #fff;
        padding: clamp(1rem, 2vw, 1.5rem);
        box-shadow: 0 18px 50px rgba(0, 0, 0, .05);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .rcu-about-stat strong {
        display: block;
        color: #17181d;
        font-size: clamp(1.65rem, 3.2vw, 3rem);
        line-height: .95;
        letter-spacing: -.035em;
    }

    .rcu-about-stat span {
        color: #6b7280;
        font-size: 1rem;
        font-weight: 600;
    }

    @media screen and (max-width: 991px) {

        .rcu-about-text_grid,
        .rcu-about-story {
            grid-template-columns: 1fr;
        }

        .rcu-about-stats {
            grid-template-columns: 1fr;
        }
    }

    /* Kontakt */
    .rcu-page {
        background: #fff;
    }

    /* Hero strony Kontakt */
    .rcu-contact-hero {
        padding-top: clamp(3.75rem, 7vw, 6rem);
        padding-bottom: clamp(3rem, 5vw, 4.75rem);
    }

    /* UkĹ‚ad Hero: tekst + zdjÄ™cie */
    .rcu-contact-hero_grid {
        display: grid;
        grid-template-columns: minmax(0, 1.04fr) minmax(20rem, .96fr);
        gap: clamp(2rem, 5vw, 5rem);
        align-items: center;
    }

    .rcu-contact-hero_content {
        max-width: 55rem;
    }

    .rcu-eyebrow {
        margin: 0 0 1rem;
        color: #ed1c24;
        font-size: .875rem;
        font-weight: 700;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .rcu-contact-panel,
    .rcu-contact-card,
    .rcu-contact-form {
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: #fff;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .06);
    }

    .rcu-contact-panel {
        overflow: hidden;
    }

    .rcu-contact-panel_media {
        aspect-ratio: 16 / 10;
        overflow: hidden;
        background: #f4f4f5;
    }

    .rcu-contact-panel_media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .rcu-contact-panel_body {
        padding: clamp(1.5rem, 3vw, 2.25rem);
    }

    .rcu-contact-panel_title {
        margin: 0 0 .35rem;
        font-size: clamp(1.875rem, 3.2vw, 3.25rem);
        line-height: .95;
        font-weight: 700;
        letter-spacing: -.025em;
    }

    .rcu-contact-options {
        padding-bottom: clamp(4rem, 7vw, 6rem);
    }

    /* Siatka kart kontaktowych */
    .rcu-contact-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 1rem;
    }

    .rcu-contact-card {
        min-height: 15rem;
        padding: clamp(1.35rem, 2.5vw, 2rem);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .rcu-contact-card.is-wide {
        grid-column: span 2;
    }

    .rcu-contact-card_icon {
        width: 3rem;
        height: 3rem;
        border-radius: 999px;
        background: rgba(237, 28, 36, .1);
        color: #ed1c24;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.1rem;
        font-weight: 700;
    }

    .rcu-contact-card_title {
        margin-top: 1.25rem;
        margin-bottom: .5rem;
    }

    .rcu-contact-line {
        margin: 0;
        color: #60616b;
        font-size: 1rem;
        line-height: 1.55;
    }

    .rcu-contact-line strong {
        color: #17171f;
        font-weight: 700;
    }

    .rcu-contact-link {
        color: #17171f;
        font-weight: 700;
        text-decoration: none;
    }

    .rcu-contact-link:hover {
        color: #ed1c24;
    }

    .rcu-contact-details {
        display: grid;
        gap: .45rem;
        margin-top: 1rem;
    }

    .rcu-hours-list {
        display: grid;
        gap: .45rem;
        margin-top: 1rem;
    }

    /* Sekcja z mapÄ… siedziby */
    .rcu-office-map {
        padding-bottom: clamp(4rem, 7vw, 6rem);
    }

    .rcu-office-map_card {
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: #fff;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .06);
        overflow: hidden;
        display: grid;
        grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
    }

    .rcu-office-map_content {
        padding: clamp(1.5rem, 4vw, 3rem);
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .rcu-office-map_frame {
        min-height: clamp(22rem, 35vw, 31rem);
        background: #f4f4f5;
    }

    .rcu-office-map_frame iframe {
        width: 100%;
        height: 100%;
        min-height: inherit;
        border: 0;
        display: block;
    }

    .rcu-contact-main {
        padding-top: clamp(4.5rem, 7vw, 6.5rem);
        padding-bottom: clamp(4rem, 8vw, 7rem);
        background: linear-gradient(180deg, #fff 0%, #f7f7f8 100%);
    }

    .rcu-contact-main_grid {
        display: grid;
        grid-template-columns: minmax(0, .9fr) minmax(22rem, 1.1fr);
        gap: clamp(2rem, 6vw, 5rem);
        align-items: start;
    }

    .rcu-contact-copy {
        position: sticky;
        top: 7rem;
        padding-top: .5rem;
    }

    .rcu-contact-list {
        display: grid;
        gap: .75rem;
        margin-top: 2rem;
    }

    .rcu-contact-list_item {
        display: flex;
        gap: .75rem;
        align-items: flex-start;
        color: #60616b;
        font-size: 1rem;
        line-height: 1.55;
    }

    .rcu-contact-list_dot {
        width: .5rem;
        height: .5rem;
        margin-top: .55rem;
        border-radius: 999px;
        background: #ed1c24;
        flex: none;
    }

    /* Kotwica formularza po wysłaniu - zostawia miejsce pod sticky header */
    #formularz-kontaktowy {
        scroll-margin-top: 7rem;
    }

    /* Formularz kontaktowy */
    .rcu-contact-form {
        padding: clamp(1.5rem, 3vw, 2.25rem);
    }

    .rcu-form-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
    }

    .rcu-field {
        display: flex;
        flex-direction: column;
        gap: .5rem;
    }

    .rcu-field.is-full {
        grid-column: 1 / -1;
    }

    .rcu-field label {
        color: #17171f;
        font-size: .875rem;
        font-weight: 700;
    }

    .rcu-field label span,
    .rcu-form-required-note span {
        color: #ed1c24;
    }

    .rcu-form-required-note,
    .rcu-form-privacy-note {
        margin: .75rem 0 0;
        color: #626875;
        font-size: .75rem;
        line-height: 1.55;
    }

    .rcu-form-privacy-note a {
        color: inherit;
        font-weight: 700;
        text-decoration: underline;
        text-underline-offset: 2px;
    }

    .rcu-input,
    .rcu-textarea,
    .rcu-select {
        width: 100%;
        min-height: 3.75rem;
        border: 1px solid rgba(0, 0, 0, .12);
        border-radius: .9rem;
        background: #fafafa;
        color: #17171f;
        padding: .9rem 1rem;
        font: inherit;
        outline: none;
        transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
    }

    .rcu-textarea {
        min-height: 8.25rem;
        resize: vertical;
    }

    .rcu-input:focus,
    .rcu-textarea:focus,
    .rcu-select:focus {
        border-color: rgba(237, 28, 36, .7);
        background: #fff;
        box-shadow: 0 0 0 4px rgba(237, 28, 36, .1);
    }

    /* Stan błędu dla pól formularza */
    .rcu-input[aria-invalid="true"],
    .rcu-textarea[aria-invalid="true"],
    .rcu-select[aria-invalid="true"] {
        border-color: rgba(237, 28, 36, .75);
        background: #fff;
    }

    /* Komunikat błędu pod pojedynczym polem */
    .rcu-form-error {
        margin: -.2rem 0 0;
        color: #b4232a;
        font-size: .8125rem;
        line-height: 1.4;
    }

    /* Komunikat błędu wysyłki formularza */
    .rcu-form-error-box {
        margin: 0 0 1rem;
        border: 1px solid rgba(180, 35, 42, .24);
        border-radius: .9rem;
        background: rgba(180, 35, 42, .08);
        color: #8f1d24;
        padding: .9rem 1rem;
        font-size: .9375rem;
        font-weight: 700;
        line-height: 1.45;
    }

    /* Komunikat sukcesu po wysłaniu formularza */
    .rcu-form-status {
        margin: 0 0 1rem;
        border: 1px solid rgba(32, 132, 92, .24);
        border-radius: .9rem;
        background: rgba(32, 132, 92, .08);
        color: #176144;
        padding: .9rem 1rem;
        font-size: .9375rem;
        font-weight: 700;
        line-height: 1.45;
    }

    .rcu-form-note {
        margin: 1rem 0 0;
        color: #7a7b84;
        font-size: .875rem;
        line-height: 1.5;
    }

    @media screen and (max-width: 991px) {

        .rcu-contact-hero_grid,
        .rcu-contact-main_grid,
        .rcu-office-map_card {
            grid-template-columns: 1fr;
        }

        .rcu-contact-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .rcu-contact-copy {
            position: static;
        }
    }

    @media screen and (max-width: 767px) {
        .rcu-contact-hero {
            padding-top: 6rem;
        }

        .rcu-contact-grid,
        .rcu-form-grid {
            grid-template-columns: 1fr;
        }

        .rcu-contact-card.is-wide {
            grid-column: auto;
        }

        .rcu-contact-card {
            min-height: auto;
        }
    }


    /* Nasze agencje */
    .rcu-agencies-page {
        background: #fff;
    }

    .rcu-agencies-hero {
        padding-top: clamp(3.75rem, 7vw, 6rem);
        padding-bottom: clamp(3rem, 5vw, 4.75rem);
    }

    .rcu-agencies-hero_grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(18rem, .42fr);
        gap: clamp(2rem, 5vw, 5rem);
        align-items: end;
    }

    .rcu-agencies-nav,
    .rcu-agencies-search,
    .rcu-agencies-map-card,
    .rcu-agencies-list-card {
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: #fff;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .06);
    }

    .rcu-agencies-nav {
        overflow: hidden;
    }

    .rcu-agencies-nav_title {
        margin: 0;
        padding: 1.25rem 1.5rem;
        background: #17171f;
        color: #fff;
        font-size: 1.25rem;
        line-height: 1.2;
        font-weight: 700;
    }

    .rcu-agencies-nav_link {
        display: block;
        padding: 1rem 1.5rem;
        color: #17171f;
        text-decoration: none;
        border-top: 1px solid rgba(0, 0, 0, .08);
        font-weight: 700;
    }

    .rcu-agencies-nav_link.is-active {
        background: #ed1c24;
        color: #fff;
    }

    /************** start lekkie menu sekcji *****************/
    /* Lekkie menu po prawej stronie hero, zamiast ciezkiego czarno-czerwonego boxa. */
    .rcu-section-nav {
        width: 100%;
        border: 1px solid rgba(0, 0, 0, .1);
        border-radius: 1.25rem;
        background: rgba(255, 255, 255, .96);
        padding: clamp(1.1rem, 2vw, 1.45rem);
        box-shadow: 0 18px 50px rgba(0, 0, 0, .06);
    }

    .rcu-section-nav_title {
        margin: 0 0 .8rem;
        color: #17171f;
        font-size: clamp(1.25rem, 2vw, 1.55rem);
        line-height: 1.15;
        font-weight: 700;
    }

    /* Linki dzialaja jak subtelne pozycje menu z ikona po prawej. */
    .rcu-section-nav_link {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        min-height: 2.95rem;
        border-top: 1px solid rgba(0, 0, 0, .08);
        color: #17171f;
        font-size: 1rem;
        font-weight: 750;
        line-height: 1.2;
        text-decoration: none;
        transition: color .2s ease;
    }

    .rcu-section-nav_icon {
        flex: none;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 1.35rem;
        height: 1.35rem;
        color: #ed1c24;
        font-size: .95rem;
        line-height: 1;
        transition: transform .2s ease;
    }

    .rcu-section-nav_link:hover,
    .rcu-section-nav_link.is-active {
        color: #ed1c24;
    }

    .rcu-section-nav_link:hover .rcu-section-nav_icon {
        transform: translate(.18rem, -.18rem);
    }

    .rcu-section-nav_link.is-active .rcu-section-nav_icon {
        border: 1px solid rgba(237, 28, 36, .18);
        border-radius: 999px;
        background: rgba(237, 28, 36, .08);
    }

    /************** end lekkie menu sekcji *****************/

    .rcu-agencies-main {
        padding-bottom: clamp(4rem, 8vw, 7rem);
    }

    .rcu-agencies-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(18rem, .36fr);
        gap: clamp(1.5rem, 4vw, 3rem);
        align-items: start;
    }

    /* Kontener mapy dla listy agencji i strony miasta. */
    .rcu-agencies-map-card {
        padding: clamp(.75rem, 2vw, 1.25rem);
        overflow: hidden;
    }

    .rcu-agencies-map-frame {
        position: relative;
        min-height: clamp(26rem, 52vw, 43rem);
        border-radius: .9rem;
        overflow: hidden;
        background: #eef2f4;
    }

    .rcu-agencies-map-frame>div {
        width: 100%;
        height: 100%;
    }

    .rcu-agencies-map-frame img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        inset: 0;
    }

    .rcu-agencies-map-badge {
        position: absolute;
        left: 1rem;
        top: 1rem;
        z-index: 1;
        border-radius: .7rem;
        background: rgba(255, 255, 255, .92);
        padding: .75rem 1rem;
        color: #17171f;
        font-weight: 700;
        box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
    }

    .rcu-agencies-map-empty {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #52545d;
        font-weight: 700;
    }

    /* Tresc chmurki po kliknieciu w pinezke Google Maps. */
    .rcu-map-popup {
        min-width: min(21rem, 72vw);
        padding: 1.25rem;
        color: #17171f;
    }

    .rcu-map-popup h2 {
        margin: 0 0 .4rem;
        font-size: 1.25rem;
        line-height: 1.25;
    }

    .rcu-map-popup p {
        margin: 0 0 1.25rem;
        color: #52545d;
        font-size: .875rem;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .rcu-map-popup_button {
        display: inline-flex;
        align-items: center;
        min-height: 2.75rem;
        background: #17171f;
        color: #fff;
        border-radius: .25rem;
        padding: .75rem 1.25rem;
        font-size: .8rem;
        font-weight: 800;
        letter-spacing: .08em;
        text-decoration: none;
        text-transform: uppercase;
    }

    /* Prawa kolumna: wyszukiwarka i lista miast. */
    .rcu-agencies-sidebar {
        display: grid;
        gap: 1.25rem;
    }

    .rcu-agencies-search {
        padding: .8rem 1rem;
        display: flex;
        align-items: center;
        gap: .75rem;
    }

    .rcu-agencies-search input {
        width: 100%;
        border: 0;
        outline: 0;
        font: inherit;
        color: #17171f;
        background: transparent;
    }

    .rcu-agencies-search_icon {
        color: #17171f;
        font-size: 1.25rem;
        font-weight: 700;
    }

    .rcu-agencies-list-card {
        padding: clamp(1.25rem, 3vw, 2rem);
    }

    .rcu-agencies-tags {
        display: flex;
        flex-wrap: wrap;
        gap: .25rem;
        /*odlegĹ‚osc miÄ™dzy buttonami prawa kolumna miasta*/
        margin-top: 1.25rem;
    }

    .rcu-agencies-tag {
        display: inline-flex;
        align-items: center;
        min-height: 1.05rem;
        /* odstepy wewn. buttonow z miastem */
        border-radius: .2rem;
        background: #ececee;
        color: #52545d;
        padding: .35rem .55rem;
        font-size: .68rem;
        /* wielkosc czcionki miast w prawej kolumnie */
        font-weight: 700;
        line-height: 1;
        text-decoration: none;
        text-transform: uppercase;
        transition: color .2s ease, background-color .2s ease, transform .2s ease;
    }

    .rcu-agencies-tag:hover {
        background: #ed1c24;
        color: #fff;
        transform: translateY(-1px);
    }

    .rcu-agencies-tag.is-active {
        background: #ed1c24;
        color: #fff;
    }

    .rcu-agencies-empty {
        flex-basis: 100%;
        margin: 0;
        color: #52545d;
    }

    /* Strona miasta: najpierw karty, pod nimi lokalna mapa. */
    .rcu-agency-results-column {
        display: grid;
        gap: clamp(1.25rem, 3vw, 2rem);
    }

    /* Siatka kart agencji na stronie miasta. */
    .rcu-agency-results {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: clamp(1.25rem, 3vw, 2rem);
    }

    .rcu-agency-city-map-card {
        width: 100%;
    }

    .rcu-agency-city-map-frame {
        min-height: clamp(24rem, 42vw, 34rem);
    }

    /* Karta pojedynczej agencji */
    .rcu-agency-card {
        position: relative;
        min-height: 24rem;
        padding: clamp(1.5rem, 3vw, 2.5rem);
        background: #fff;
        border: 1px solid rgba(0, 0, 0, .08);
        border-radius: .25rem;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .08);
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .rcu-agency-card_distance {
        position: absolute;
        top: 1.25rem;
        right: 1.25rem;
        background: #17171f;
        color: #fff;
        padding: .45rem .7rem;
        font-size: .75rem;
        font-weight: 800;
    }

    .rcu-agency-card_title {
        margin: 0 3.5rem 1.5rem 0;
        color: #17171f;
        font-size: clamp(1.5rem, 2.5vw, 2rem);
        line-height: 1.2;
        font-weight: 500;
    }

    .rcu-agency-card_line {
        margin: 0 0 1rem;
        color: #52545d;
        font-size: 1rem;
        line-height: 1.55;
    }

    .rcu-agency-card_line strong {
        color: #52545d;
        font-weight: 800;
    }

    .rcu-agency-card_domain {
        color: #d50f08;
        font-size: 1.05rem;
        font-weight: 800;
        text-decoration: none;
    }

    .rcu-agency-card_footer {
        width: 100%;
        margin-top: auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        gap: 1rem;
    }

    .rcu-agency-card_button {
        display: inline-flex;
        align-items: center;
        min-height: 2.75rem;
        background: #d50f08;
        color: #fff;
        border-radius: .35rem;
        padding: .75rem 1.25rem;
        font-size: .8rem;
        font-weight: 800;
        letter-spacing: .04em;
        text-decoration: none;
        text-transform: uppercase;
    }

    .rcu-agency-card_badge {
        flex-shrink: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 7.5rem;
        height: 4.75rem;
        border-radius: .6rem;
        overflow: hidden;
        background: #159bd3;
        text-decoration: none;
    }

    .rcu-agency-card_badge img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* Tablet (<=991px) */
    @media screen and (max-width: 991px) {

        .rcu-agencies-hero_grid,
        .rcu-agencies-layout {
            grid-template-columns: 1fr;
        }

        .rcu-agencies-sidebar {
            order: -1;
        }

        .rcu-agency-results {
            grid-template-columns: 1fr;
        }
    }

    /* Mobile (<=767px) */
    @media screen and (max-width: 767px) {
        .rcu-agencies-hero {
            padding-top: 6rem;
        }

        .rcu-agencies-map-frame {
            min-height: 24rem;
        }

        .rcu-agency-card {
            min-height: 20rem;
        }

        .rcu-agency-card_footer {
            align-items: flex-start;
            flex-direction: column;
        }
    }

    /* Home: ujednolicenie zdjÄ™Ä‡ w kartach "Jak dziaĹ‚a RCU" */
    .section_sp2-check .sp2-check_image-wrap,
    .section_sp2-check .sp2-check_image {
        width: 100%;
    }

    .section_sp2-check .sp2-check_image {
        display: block;
        height: auto;
        object-fit: cover;
    }

    @media screen and (max-width: 767px) {
        .section_sp2-check .sp2-check_image {
            aspect-ratio: 3 / 2;
        }
    }



    /* ==========================================================================
     RCU Documents - lista plikĂłw do pobrania
   ========================================================================== */
    .rcu-documents {
        display: grid;
        gap: 1rem;
        max-width: 58rem;
        margin-top: 2.5rem;
    }

    .rcu-document {
        display: grid;
        grid-template-columns: auto 1fr auto;
        align-items: center;
        gap: 1rem;
        padding: 1.25rem;
        color: #111318;
        text-decoration: none;
        background: #fff;
        border: 1px solid rgba(18, 18, 23, 0.1);
        border-radius: 1rem;
        box-shadow: 0 8px 24px rgba(18, 18, 23, 0.05);
        transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
    }

    .rcu-document:hover {
        transform: translateY(-2px);
        border-color: rgba(237, 28, 36, 0.32);
        box-shadow: 0 14px 34px rgba(18, 18, 23, 0.09);
    }

    .rcu-document_icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 3.25rem;
        height: 3.25rem;
        color: #ed1c24;
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        background: rgba(237, 28, 36, 0.08);
        border: 1px solid rgba(237, 28, 36, 0.12);
        border-radius: 0.75rem;
    }

    .rcu-document_text {
        font-size: 1.05rem;
        line-height: 1.45;
    }

    .rcu-document_action {
        color: #6b7280;
        font-size: 0.95rem;
    }

    @media screen and (max-width: 767px) {
        .rcu-document {
            grid-template-columns: auto 1fr;
            padding: 1rem;
        }

        .rcu-document_action {
            grid-column: 2;
        }
    }

    /* ========================================================================== */
    /* Landing hero na podstronach korzystających z pełnoekranowego szablonu Superpower. */
    .section_hiw2-hero.rcu-landing-hero {
        height: clamp(26rem, 52vh, 34rem);
        min-height: 0;
        margin-top: calc(clamp(5rem, 6.5vw, 6rem) + 0.75rem);
    }

    .section_hiw2-hero.rcu-landing-hero .page-padding.padding-section-large {
        padding-top: clamp(3rem, 5vw, 5rem);
        padding-bottom: clamp(3rem, 5vw, 5rem);
    }

    @media screen and (max-width: 991px) {
        .section_hiw2-hero.rcu-landing-hero {
            height: clamp(34rem, 64vh, 38rem);
            min-height: 0;
            margin-top: 5.75rem;
        }
    }


    /* mniejszy przycisk w hero wszędzie */
    @media screen and (min-width: 992px) {
        .section_hiw2-hero.rcu-landing-hero .rcu-car-hero__cta {
            min-height: 2.45rem;
            padding: 0.4rem 1.1rem;
            font-size: 0.86rem;
        }
    }

    /* ========================================================================== */
    /* Strona glowna: navbar nad hero i jubileusz jako prawa kolumna. */
    .section_sp2-home-hero.rcu-home-hero {
        position: relative;
        /* Wysokość bannera  398px — minimalna wysokość; 46dvh — wysokość zależna od ekranu; 448px — maksymalna wysokość. */
        height: clamp(398px, 46dvh, 448px);
        min-height: 398px;
        margin-top: calc(clamp(5rem, 6.5vw, 6rem) + 0.75rem);
        margin-inline: 0.625rem;
        width: calc(100% - 1.25rem);
        overflow: hidden;
        isolation: isolate;
        border-radius: 1rem;
        color: #ffffff;
        background-color: #a9000b;
        background-image: url('../images/tlo5cl.png');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

    .section_sp2-home-hero.rcu-home-hero::before {
        content: '';
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
        background: linear-gradient(90deg, rgba(72, 0, 4, 0.2) 0%, rgba(72, 0, 4, 0.08) 46%, rgba(72, 0, 4, 0.02) 100%);
    }

    .section_sp2-home-hero.rcu-home-hero .section_sp2-home-hero-inner {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 100%;
        height: 100%;
        min-height: 0;
        /* Wewnętrzne pionowe odstępy bannera - Kolejno: góra, boki, dół. */
        /* Wysokość mobilna jest ustawiona oddzielnie: tablet: min-height: 42rem około [linii 1345 (line 1343)]
        telefon: min-height: 43rem około [linii 1386 (line 1385)]. */
        padding: clamp(20px, 2vw, 30px) clamp(48px, 5.8vw, 110px) clamp(18px, 1.8vw, 26px);
    }

    .section_sp2-home-hero.rcu-home-hero .sp2-home-hero_component {
        position: relative !important;
        inset: auto !important;
        width: 100%;
        height: auto;
        margin: 0 !important;
    }

    .rcu-home-hero__layout {
        display: grid;
        grid-template-columns: minmax(0, 1.35fr) minmax(20rem, 0.65fr);
        align-items: center;
        gap: clamp(2rem, 5vw, 6rem);
        width: 100%;
    }

    .section_sp2-home-hero.rcu-home-hero .sp2-home-hero_content {
        position: relative;
        inset: auto;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        max-width: 52rem;
        padding: 0;
        color: #ffffff;
        transform: none;
    }

    .section_sp2-home-hero.rcu-home-hero .title_content-group {
        gap: 8px;
    }

    .section_sp2-home-hero.rcu-home-hero .rcu-hero-eyebrow {
        margin: 0;
        color: #ffffff;
        font-size: clamp(15px, 1.1vw, 19px);
        line-height: 1.25;
        font-weight: 700;
    }

    .section_sp2-home-hero.rcu-home-hero .heading-style-h1 {
        max-width: 52rem;
        margin: 0;
        color: #ffffff;
        font-size: clamp(38px, 3.2vw, 62px);
        line-height: 1.03;
        letter-spacing: -0.045em;
        text-wrap: balance;
    }

    .section_sp2-home-hero.rcu-home-hero .max-width-small {
        max-width: 43rem;
    }

    .section_sp2-home-hero.rcu-home-hero .max-width-small p {
        margin: 0;
        color: rgba(255, 255, 255, 0.88);
        font-size: clamp(16px, 1.05vw, 20px);
        line-height: 1.45;
    }

    .section_sp2-home-hero.rcu-home-hero .button-group {
        margin-top: clamp(12px, 1vw, 18px);
    }

    /* Biały przycisk/button w hero można regulować tutaj */
    .section_sp2-home-hero.rcu-home-hero .rcu-home-hero__cta {
        min-height: 32px;
        padding: 7px 16px;
        border: 1px solid rgba(255, 255, 255, 0.7);
        background: #ffffff !important;
        color: #c70b15 !important;
        font-size: 14px;
        box-shadow: 0 0.75rem 2rem rgba(69, 0, 5, 0.2);
    }

    .section_sp2-home-hero.rcu-home-hero .rcu-home-hero__cta .sp2_btn-content {
        color: #c70b15 !important;
    }

    /* Odstępy pomiędzy trzema grafikami 25 lat */
    .rcu-home-hero__anniversary {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-self: center;
        gap: clamp(0.25rem, 0.65vw, 0.75rem);
        width: min(100%, 34rem);
        color: #ffffff;
        filter: drop-shadow(0 0.75rem 1.25rem rgba(72, 0, 4, 0.18));
    }

    .rcu-home-hero__anniversary img {
        display: block;
        height: auto;
        object-fit: contain;
    }

    /* Rozmiary każdej grafiki */
    .rcu-home-hero__anniversary-top {
        width: min(70%, 19.25rem);
    }

    .rcu-home-hero__anniversary-middle {
        width: min(100%, 33.5625rem);
    }

    .rcu-home-hero__anniversary-bottom {
        width: min(47%, 13.75rem);
    }

    .section_sp2-home-hero.rcu-home-hero .sp2-home-hero_bottom-notes {
        position: relative !important;
        inset: auto !important;
        display: grid;
        grid-template-columns: 1fr auto 1fr auto 1fr;
        align-items: stretch;
        width: min(58rem, 62%);
        margin: clamp(10px, 0.8vw, 14px) 0 0;
        padding: 6px 20px;
        border: 1px solid rgba(255, 255, 255, 0.24);
        border-radius: 1rem;
        background: rgba(87, 0, 5, 0.14);
        -webkit-backdrop-filter: blur(0.65rem);
        backdrop-filter: blur(0.65rem);
        transform: translateY(-6px);
    }

    .section_sp2-home-hero.rcu-home-hero .sp2-hero_bottom-note {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 0.2rem;
        min-width: 0;
        color: #ffffff;
        font-size: clamp(1.5rem, 1.9vw, 2rem);
        line-height: 1.05;
        font-weight: 700;
        text-align: center;
    }

    .section_sp2-home-hero.rcu-home-hero .sp2-hero_bottom-note .text-style-muted {
        color: rgba(255, 255, 255, 0.82);
        font-size: 0.98rem;
        line-height: 1.2;
        font-weight: 400;
    }

    .section_sp2-home-hero.rcu-home-hero .sp2-hero_bottom-divider {
        width: 1px;
        height: 100%;
        min-height: 46px;
        background: rgba(255, 255, 255, 0.28);
    }

    @media screen and (min-width: 992px) {
        .rcu-home-hero__headline-line {
            white-space: nowrap;
        }
    }

    /*
     * Na szerokich ekranach prawa kolumna z grafika jubileuszowa osiaga
     * maksymalny rozmiar. Hero ograniczone do 448px ucinalo wtedy pasek
     * statystyk przez overflow: hidden.
     */
    @media screen and (min-width: 1280px) {
        .section_sp2-home-hero.rcu-home-hero .sp2-home-hero_bottom-notes {
            position: absolute !important;
            left: clamp(48px, 5.8vw, 110px) !important;
            bottom: 6px !important;
            margin: 0;
            transform: none;
        }

        /* Kompaktowe odstepy zapobiegaja kolizji CTA ze statystykami przy zoomie/DPI. */
        .section_sp2-home-hero.rcu-home-hero .title_content-group {
            margin-bottom: 0;
        }

        .section_sp2-home-hero.rcu-home-hero .button-group {
            margin-top: 6px !important;
        }

        .section_sp2-home-hero.rcu-home-hero .rcu-home-hero__anniversary {
            width: min(100%, 23.75rem);
        }
    }

    @media screen and (min-width: 1600px) {
        .section_sp2-home-hero.rcu-home-hero {
            height: 560px;
            min-height: 560px;
        }

        .section_sp2-home-hero.rcu-home-hero .rcu-home-hero__anniversary {
            width: min(100%, 34rem);
        }

        .section_sp2-home-hero.rcu-home-hero .sp2-home-hero_bottom-notes {
            position: absolute !important;
            left: clamp(48px, 5.8vw, 110px) !important;
            bottom: 20px !important;
            margin: 0;
            transform: none;
        }
    }

    @media screen and (max-width: 991px) {
        .section_sp2-home-hero.rcu-home-hero {
            height: auto !important;
            min-height: 42rem !important;
            margin-top: 5.75rem !important;
        }

        .section_sp2-home-hero.rcu-home-hero {
            background-position: 58% center;
        }

        .section_sp2-home-hero.rcu-home-hero .section_sp2-home-hero-inner {
            justify-content: center !important;
            min-height: 42rem !important;
            padding: 2.5rem 1.5rem !important;
        }

        .rcu-home-hero__layout {
            grid-template-columns: 1fr;
            gap: 2.25rem;
        }

        .section_sp2-home-hero.rcu-home-hero .sp2-home-hero_content {
            padding: 0 !important;
            transform: none !important;
        }

        .section_sp2-home-hero.rcu-home-hero .heading-style-h1 {
            max-width: 38rem !important;
            font-size: clamp(2.35rem, 7vw, 3.5rem) !important;
        }

        .section_sp2-home-hero.rcu-home-hero .max-width-small {
            max-width: 34rem !important;
        }

        .rcu-home-hero__anniversary {
            justify-self: start;
            width: min(100%, 31rem);
        }
    }

    @media screen and (max-width: 767px) {
        .section_sp2-home-hero.rcu-home-hero {
            min-height: 43rem !important;
            margin-top: 5.25rem !important;
            margin-inline: 0.5rem;
            width: calc(100% - 1rem);
            border-radius: 0.875rem;
        }

        .section_sp2-home-hero.rcu-home-hero .section_sp2-home-hero-inner {
            min-height: 43rem !important;
            padding: 2.15rem 1.25rem 2rem !important;
        }

        .section_sp2-home-hero.rcu-home-hero .rcu-hero-eyebrow {
            font-size: 0.86rem;
        }

        .section_sp2-home-hero.rcu-home-hero .heading-style-h1 {
            max-width: 22rem !important;
            font-size: clamp(2.05rem, 9.5vw, 2.7rem) !important;
            line-height: 1.04 !important;
        }

        .section_sp2-home-hero.rcu-home-hero .max-width-small p {
            font-size: 0.98rem !important;
            line-height: 1.4 !important;
        }

        .section_sp2-home-hero.rcu-home-hero .button-group {
            display: flex !important;
            justify-content: flex-start;
            align-self: flex-start;
            width: auto !important;
            margin-top: 0.9rem !important;
        }

        .section_sp2-home-hero.rcu-home-hero .rcu-home-hero__cta {
            display: inline-flex !important;
            width: fit-content !important;
            max-width: 100%;
            min-height: 34px !important;
            padding: 6px 12px !important;
            font-size: 13px !important;
            line-height: 1;
            white-space: nowrap;
        }

        .section_sp2-home-hero.rcu-home-hero .rcu-home-hero__cta .sp2_btn-content {
            font-size: 13px !important;
            line-height: 1;
            white-space: nowrap;
        }
    }
