:root {
    --viviliv-page-bg: #07170e;
    --viviliv-page-deep: #020705;
    --viviliv-green: #1a3f26;
    --viviliv-green-mid: #123621;
    --viviliv-gold: #d8b24a;
    --viviliv-gold-light: #f3d77a;
    --viviliv-white: #ffffff;
    --viviliv-text: rgba(255,255,255,.88);
    --viviliv-muted: rgba(255,255,255,.70);
    --viviliv-card-radius: 24px;
    --viviliv-panel-radius: 28px;
    --viviliv-button-radius: 18px;
    --viviliv-card-border: rgba(216,178,74,.78);
    --viviliv-card-surface:
        radial-gradient(circle at 50% 0%, rgba(255,255,255,.06), transparent 38%),
        radial-gradient(circle at 82% 88%, rgba(216,178,74,.16), transparent 30%),
        linear-gradient(180deg, #1a4a2e 0%, #123621 48%, #08170f 100%);
    --viviliv-card-shadow:
        0 18px 40px rgba(0,0,0,.38),
        inset 0 1px 0 rgba(255,255,255,.08);
}

/* Native Montserrat rendering — no text scaling, blur or faux weights. */
.viviliv-about-page,
.viviliv-menu-switcher,
.viviliv-about-page button,
.viviliv-about-page a {
    font-family: Montserrat, Arial, sans-serif !important;
    font-synthesis: none;
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
    text-rendering: optimizeLegibility;
}

body.viviliv-about-active {
    background: var(--viviliv-page-bg) !important;
    overflow-x: hidden;
}

body.viviliv-about-active .entry-header,
body.viviliv-about-active .page-header {
    display: none !important;
}

body.viviliv-about-active #page,
body.viviliv-about-active #content,
body.viviliv-about-active #primary,
body.viviliv-about-active #main,
body.viviliv-about-active .site,
body.viviliv-about-active .site-content,
body.viviliv-about-active .content-area,
body.viviliv-about-active .site-main,
body.viviliv-about-active .inside-article,
body.viviliv-about-active article.page,
body.viviliv-about-active .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--viviliv-page-bg) !important;
}

body.viviliv-about-active .grid-container,
body.viviliv-about-active .site.grid-container {
    max-width: none !important;
}

.viviliv-about-page {
    color: var(--viviliv-text);
    background:
        radial-gradient(circle at 16% 12%, rgba(216,178,74,.08), transparent 22%),
        linear-gradient(180deg, var(--viviliv-page-deep) 0%, var(--viviliv-page-bg) 28%, var(--viviliv-page-bg) 100%);
    overflow: hidden;
}

.viviliv-about-page * {
    box-sizing: border-box;
}

.viviliv-about-page img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.viviliv-about-shell {
    width: min(1320px, calc(100% - 42px));
    margin-inline: auto;
}

.viviliv-about-kicker {
    margin: 0 0 14px;
    color: var(--viviliv-gold-light);
    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: .24em;
    text-transform: uppercase;
}

.viviliv-about-hero {
    position: relative;
    padding: 54px 0 68px;
    border-bottom: 1px solid rgba(216,178,74,.32);
    background:
        radial-gradient(circle at 16% 18%, rgba(216,178,74,.14), transparent 27%),
        radial-gradient(circle at 82% 32%, rgba(26,63,38,.55), transparent 35%),
        linear-gradient(180deg, #020604 0%, #07120b 100%);
}

.viviliv-about-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .55;
    background:
        linear-gradient(120deg, transparent 0%, rgba(216,178,74,.05) 50%, transparent 78%),
        radial-gradient(circle at 50% 0%, rgba(255,255,255,.045), transparent 33%);
}

.viviliv-about-hero__grid {
    position: relative;
    z-index: 1;
    min-height: 620px;
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    align-items: center;
    gap: 44px;
}

.viviliv-about-hero__content {
    padding: 46px 0;
}

.viviliv-about-hero h1,
.viviliv-about-hero h2,
.viviliv-about-copy h2,
.viviliv-about-heading h2,
.viviliv-about-benefit h3,
.viviliv-about-banner h2,
.viviliv-about-cta h2 {
    font-family: Montserrat, Arial, sans-serif !important;
    font-synthesis: none;
    text-shadow: none;
}

.viviliv-about-hero h1 {
    margin: 0 0 22px;
    color: var(--viviliv-white);
    font-size: clamp(48px, 6vw, 78px);
    line-height: .96;
    font-weight: 800;
    letter-spacing: .02em;
}

.viviliv-about-hero h1::after,
.viviliv-about-copy h2::after,
.viviliv-about-heading h2::after,
.viviliv-about-cta h2::after {
    content: "";
    display: block;
    width: 110px;
    height: 1px;
    margin-top: 20px;
    background: linear-gradient(90deg, transparent, var(--viviliv-gold), transparent);
}

.viviliv-about-hero h1::after {
    margin-left: 0;
    background: linear-gradient(90deg, var(--viviliv-gold), transparent);
}

.viviliv-about-hero h2 {
    margin: 0 0 24px;
    color: var(--viviliv-white);
    font-size: clamp(35px, 4.2vw, 60px);
    line-height: 1.04;
    font-weight: 800;
    letter-spacing: -.025em;
}

.viviliv-about-hero h2 span {
    color: var(--viviliv-gold-light);
}

.viviliv-about-lead {
    max-width: 680px;
    margin: 0;
    color: var(--viviliv-text);
    font-size: 18px;
    line-height: 1.75;
    font-weight: 500;
}

.viviliv-about-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.viviliv-about__button {
    min-width: 220px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border: 1px solid transparent;
    border-radius: var(--viviliv-button-radius);
    font-size: 16px;
    line-height: 1.1;
    font-weight: 800;
    text-align: center;
    text-decoration: none !important;
    box-shadow: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.viviliv-about__button.is-primary {
    color: #06150d;
    border-color: rgba(243,215,122,.95);
    background: linear-gradient(135deg, var(--viviliv-gold-light), var(--viviliv-gold));
    box-shadow: 0 12px 28px rgba(216,178,74,.20);
}

.viviliv-about__button.is-primary:hover,
.viviliv-about__button.is-primary:focus-visible {
    color: #020705;
    background: linear-gradient(135deg, #ffe59a, #e0b94d);
    box-shadow: 0 14px 34px rgba(216,178,74,.30);
}

.viviliv-about__button.is-secondary,
.viviliv-about__button.is-light {
    color: var(--viviliv-white);
    border-color: var(--viviliv-card-border);
    background: linear-gradient(180deg, rgba(26,74,46,.72), rgba(8,23,15,.92));
}

.viviliv-about__button.is-secondary:hover,
.viviliv-about__button.is-secondary:focus-visible,
.viviliv-about__button.is-light:hover,
.viviliv-about__button.is-light:focus-visible {
    color: var(--viviliv-gold-light);
    border-color: var(--viviliv-gold-light);
    background: #123621;
}

.viviliv-about-hero__media {
    min-height: 520px;
    overflow: hidden;
    border: 1.5px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-panel-radius);
    background: #08170f;
    box-shadow:
        0 28px 70px rgba(0,0,0,.55),
        0 0 40px rgba(216,178,74,.12),
        inset 0 1px 0 rgba(255,255,255,.08);
}

.viviliv-about-hero__media img {
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    object-position: 58% center;
}

.viviliv-about-section {
    padding: 76px 0;
    background: transparent;
}

.viviliv-about-panel {
    position: relative;
    overflow: hidden;
    padding: 48px;
    border: 1.5px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-panel-radius);
    background: var(--viviliv-card-surface);
    box-shadow: var(--viviliv-card-shadow);
}

.viviliv-about-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .65;
    background:
        linear-gradient(125deg, transparent 12%, rgba(255,255,255,.045) 48%, transparent 78%),
        radial-gradient(circle at 12% 0%, rgba(243,215,122,.12), transparent 24%);
}

.viviliv-about-panel > * {
    position: relative;
    z-index: 1;
}

.viviliv-about-split {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    align-items: center;
    gap: 58px;
}

.viviliv-about-split--reverse {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.16fr);
}

.viviliv-about-photo-card {
    position: relative;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(216,178,74,.58);
    border-radius: var(--viviliv-card-radius);
    background: #07170e;
    box-shadow: 0 18px 42px rgba(0,0,0,.38);
}

.viviliv-about-photo-card img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.viviliv-about-photo-card--portrait img {
    aspect-ratio: 4 / 4.35;
    object-position: center 42%;
}

/* Delikatny ruch zdjęcia fasady, jak w popupie menu. */
.viviliv-about-photo-card.is-facade-motion img {
    transform: scale(1.075) translate3d(-1.5%, 0, 0);
    animation: vivilivAboutFacadeMove 11s ease-in-out infinite alternate;
    will-change: transform;
}

@keyframes vivilivAboutFacadeMove {
    0% {
        transform: scale(1.075) translate3d(-1.5%, 0, 0);
    }
    100% {
        transform: scale(1.12) translate3d(1.5%, -1.2%, 0);
    }
}

.viviliv-about-copy h2,
.viviliv-about-heading h2,
.viviliv-about-cta h2 {
    margin: 0 0 24px;
    color: var(--viviliv-white);
    font-size: clamp(34px, 4vw, 54px);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -.025em;
}

.viviliv-about-copy p,
.viviliv-about-heading > p:last-child,
.viviliv-about-cta p {
    margin: 0 0 18px;
    color: var(--viviliv-text);
    font-size: 17px;
    line-height: 1.8;
    font-weight: 500;
}

.viviliv-about-quote {
    margin-top: 28px !important;
    padding: 18px 20px;
    border-left: 3px solid var(--viviliv-gold);
    border-radius: 0 16px 16px 0;
    color: var(--viviliv-gold-light) !important;
    background: rgba(6,21,13,.45);
    font-weight: 800 !important;
}

.viviliv-about-checks {
    display: grid;
    gap: 12px;
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}

.viviliv-about-checks li {
    position: relative;
    padding-left: 36px;
    color: var(--viviliv-white);
    font-size: 16px;
    font-weight: 700;
}

.viviliv-about-checks li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: -1px;
    width: 25px;
    height: 25px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(243,215,122,.78);
    border-radius: 50%;
    color: #07170e;
    background: var(--viviliv-gold-light);
    font-size: 14px;
    font-weight: 900;
}

.viviliv-about-heading {
    max-width: 900px;
    margin: 0 auto 40px;
    text-align: center;
}

.viviliv-about-heading h2::after {
    margin-inline: auto;
}

.viviliv-about-benefit-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.viviliv-about-benefit {
    min-height: 238px;
    padding: 30px;
    border: 1.5px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-card-radius);
    background: var(--viviliv-card-surface);
    box-shadow: var(--viviliv-card-shadow);
}

.viviliv-about-icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    border: 1px solid rgba(243,215,122,.72);
    border-radius: 50%;
    color: var(--viviliv-gold-light);
    background: rgba(6,21,13,.58);
}

.viviliv-about-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.viviliv-about-benefit h3 {
    margin: 0 0 12px;
    color: var(--viviliv-white);
    font-size: 24px;
    line-height: 1.2;
    font-weight: 800;
}

.viviliv-about-benefit p {
    margin: 0;
    color: var(--viviliv-muted);
    font-size: 16px;
    line-height: 1.7;
    font-weight: 500;
}

.viviliv-about-showcase {
    margin: 0 0 22px;
    overflow: hidden;
    border: 1.5px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-panel-radius);
    background: #07170e;
    box-shadow: var(--viviliv-card-shadow);
}

.viviliv-about-showcase img {
    aspect-ratio: 2.45 / 1;
    object-fit: cover;
}

.viviliv-about-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.viviliv-about-gallery__item {
    position: relative;
    min-height: 260px;
    overflow: hidden;
    border: 1.5px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-card-radius);
    box-shadow: var(--viviliv-card-shadow);
    text-decoration: none !important;
    background: #07170e;
}

.viviliv-about-gallery__item img {
    height: 100%;
    min-height: 260px;
    object-fit: cover;
    transition: transform .35s ease;
}

.viviliv-about-gallery__item:hover img,
.viviliv-about-gallery__item:focus-visible img {
    transform: scale(1.045);
}

.viviliv-about-gallery__item span {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: grid;
    gap: 4px;
    padding: 30px 14px 18px;
    color: var(--viviliv-white);
    background: linear-gradient(180deg, transparent, rgba(2,7,5,.98));
    text-align: center;
}

.viviliv-about-gallery__item strong {
    font-size: 19px;
    line-height: 1.2;
    font-weight: 800;
}

.viviliv-about-gallery__item small {
    color: var(--viviliv-gold-light);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.viviliv-about-banner {
    border-block: 1px solid rgba(216,178,74,.45);
    color: var(--viviliv-white);
    background:
        radial-gradient(circle at 85% 50%, rgba(216,178,74,.16), transparent 25%),
        linear-gradient(135deg, #06150d, #1a3f26);
}

.viviliv-about-banner__inner {
    min-height: 190px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 28px;
    padding-block: 36px;
}

.viviliv-about-banner__mark {
    color: var(--viviliv-gold-light);
    font-size: 78px;
    line-height: 1;
}

.viviliv-about-banner h2 {
    margin: 0 0 8px;
    color: var(--viviliv-gold-light);
    font-size: clamp(36px, 4vw, 56px);
    line-height: 1.05;
    font-weight: 800;
}

.viviliv-about-banner p {
    margin: 0;
    color: var(--viviliv-text);
    font-size: 18px;
    font-weight: 600;
}

.viviliv-about-banner__badge {
    width: 112px;
    height: 112px;
    display: grid;
    place-items: center;
    border: 2px solid var(--viviliv-gold-light);
    border-radius: 50%;
    color: var(--viviliv-gold-light);
    font-size: 14px;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
}

.viviliv-about-cta__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) auto;
    align-items: center;
    gap: 48px;
    padding: 44px 48px;
    border: 1.5px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-panel-radius);
    background: var(--viviliv-card-surface);
    box-shadow: var(--viviliv-card-shadow);
}

.viviliv-about-cta__inner .viviliv-about-actions {
    margin-top: 0;
}

/* Realne przyciski przejścia Menu dnia ↔ Pełne menu. */
.viviliv-menu-switcher {
    width: min(1320px, calc(100% - 32px));
    margin: 20px auto 30px;
    padding: 10px;
    display: grid;
    grid-template-columns: repeat(2, minmax(180px, 260px));
    justify-content: center;
    gap: 10px;
    border: 1px solid rgba(216,178,74,.46);
    border-radius: 24px;
    background:
        radial-gradient(circle at 50% 0%, rgba(255,255,255,.05), transparent 45%),
        linear-gradient(180deg, rgba(26,74,46,.78), rgba(8,23,15,.95));
    box-shadow: 0 14px 34px rgba(0,0,0,.30);
}

.viviliv-menu-switcher__button {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border: 1px solid rgba(216,178,74,.72);
    border-radius: 16px;
    color: var(--viviliv-white) !important;
    background: #123621;
    font-size: 16px;
    line-height: 1.1;
    font-weight: 800;
    text-decoration: none !important;
    text-align: center;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.viviliv-menu-switcher__button:hover,
.viviliv-menu-switcher__button:focus-visible {
    color: var(--viviliv-gold-light) !important;
    border-color: var(--viviliv-gold-light);
    background: #1a4a2e;
}

.viviliv-menu-switcher__button.is-active {
    color: #06150d !important;
    border-color: #f3d77a;
    background: linear-gradient(135deg, var(--viviliv-gold-light), var(--viviliv-gold));
    box-shadow: 0 8px 20px rgba(216,178,74,.22);
}

@media (max-width: 1024px) {
    .viviliv-about-hero__grid,
    .viviliv-about-split,
    .viviliv-about-split--reverse,
    .viviliv-about-cta__inner {
        grid-template-columns: 1fr;
    }

    .viviliv-about-hero__grid {
        min-height: 0;
    }

    .viviliv-about-hero__content {
        padding-bottom: 10px;
    }

    .viviliv-about-hero__media {
        min-height: 430px;
    }

    .viviliv-about-hero__media img {
        min-height: 430px;
    }

    .viviliv-about-split--reverse .viviliv-about-copy {
        order: 2;
    }

    .viviliv-about-benefit-grid,
    .viviliv-about-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .viviliv-about-cta__inner .viviliv-about-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 720px) {
    .viviliv-about-shell {
        width: min(100% - 24px, 1320px);
    }

    .viviliv-about-hero {
        padding: 34px 0 46px;
    }

    .viviliv-about-hero h1 {
        font-size: 48px;
    }

    .viviliv-about-hero h2 {
        font-size: 34px;
    }

    .viviliv-about-lead,
    .viviliv-about-copy p,
    .viviliv-about-heading > p:last-child,
    .viviliv-about-cta p {
        font-size: 16px;
        line-height: 1.68;
    }

    .viviliv-about-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .viviliv-about__button {
        width: 100%;
        min-width: 0;
    }

    .viviliv-about-hero__media,
    .viviliv-about-hero__media img {
        min-height: 310px;
    }

    .viviliv-about-section {
        padding: 54px 0;
    }

    .viviliv-about-panel {
        padding: 24px 20px;
    }

    .viviliv-about-split,
    .viviliv-about-split--reverse {
        gap: 32px;
    }

    .viviliv-about-copy h2,
    .viviliv-about-heading h2,
    .viviliv-about-cta h2 {
        font-size: 32px;
    }

    .viviliv-about-benefit-grid,
    .viviliv-about-gallery {
        grid-template-columns: 1fr;
    }

    .viviliv-about-benefit {
        min-height: 0;
    }

    .viviliv-about-gallery__item,
    .viviliv-about-gallery__item img {
        min-height: 250px;
    }

    .viviliv-about-banner__inner {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .viviliv-about-banner__mark,
    .viviliv-about-banner__badge {
        margin-inline: auto;
    }

    .viviliv-about-cta__inner {
        padding: 30px 22px;
    }

    .viviliv-menu-switcher {
        width: min(100% - 20px, 640px);
        grid-template-columns: 1fr 1fr;
        margin-block: 14px 22px;
        padding: 8px;
        border-radius: 20px;
    }

    .viviliv-menu-switcher__button {
        min-height: 50px;
        padding: 10px 10px;
        border-radius: 14px;
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .viviliv-about-photo-card.is-facade-motion img,
    .viviliv-about-gallery__item img {
        animation: none !important;
        transition: none !important;
        transform: none !important;
    }
}

/* =========================================================
   VIVILIV O NAS 1.3.0 — ALIGNMENT + HOMEPAGE PARITY
   ========================================================= */

/* Full viewport breakout: the page cannot inherit a reserved sidebar width. */
body.viviliv-about-active .site-content,
body.viviliv-about-active #content,
body.viviliv-about-active #page,
body.viviliv-about-active #primary,
body.viviliv-about-active #main,
body.viviliv-about-active .content-area,
body.viviliv-about-active .site-main,
body.viviliv-about-active .inside-article,
body.viviliv-about-active article.page,
body.viviliv-about-active .entry-content {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

body.viviliv-about-active #right-sidebar,
body.viviliv-about-active #left-sidebar,
body.viviliv-about-active .widget-area:not(.site-footer *) {
    display: none !important;
}

.viviliv-about-page {
    position: relative;
    left: 50%;
    width: 100vw;
    max-width: 100vw;
    margin-left: -50vw;
}

.viviliv-about-shell {
    width: min(1180px, calc(100% - 48px));
    margin-right: auto;
    margin-left: auto;
}

/* Remove decorative dashes/lines. The VIVILIV headings stand on typography. */
.viviliv-about-hero h1::after,
.viviliv-about-copy h2::after,
.viviliv-about-heading h2::after,
.viviliv-about-cta h2::after {
    content: none !important;
    display: none !important;
}

/* Exact visual language of the homepage "Dlaczego VIVILIV?" section. */
.viviliv-about-benefits {
    padding: 86px 24px 76px;
    text-align: center;
}

.viviliv-about-benefits .viviliv-about-shell {
    width: min(1180px, 100%);
}

.viviliv-about-heading--why {
    width: 100%;
    max-width: none;
    margin: 0 auto 42px;
    text-align: center;
}

.viviliv-about-heading--why h2 {
    margin: 0 !important;
    color: #f7f4ea !important;
    font-size: clamp(36px, 4vw, 52px) !important;
    line-height: 1.05 !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
    text-align: center !important;
}

.viviliv-about-heading--why p {
    max-width: 680px;
    margin: 18px auto 0 !important;
    color: #d9d7d0 !important;
    font-size: 19px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    text-align: center !important;
}

.viviliv-about-benefit-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 24px;
    margin: 0 auto;
}

.viviliv-about-benefit {
    min-height: 156px;
    margin: 0;
    padding: 28px 28px 26px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: var(--viviliv-card-surface);
    border: 1px solid var(--viviliv-card-border);
    border-radius: var(--viviliv-card-radius);
    box-shadow: var(--viviliv-card-shadow);
}

.viviliv-about-benefit .viviliv-about-icon {
    display: none !important;
}

.viviliv-about-benefit h3 {
    margin: 0 0 16px !important;
    color: #f7f4ea !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    text-align: center !important;
}

.viviliv-about-benefit p {
    max-width: 340px;
    margin: 0 auto !important;
    color: #d9d7d0 !important;
    font-size: 15px !important;
    line-height: 1.48 !important;
    font-weight: 500 !important;
    text-align: center !important;
}

/* Premium menu bridge: two clean buttons, no bulky extra panel. */
.viviliv-menu-switcher {
    position: relative;
    z-index: 8;
    width: min(470px, calc(100% - 32px));
    margin: 18px auto 28px;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.viviliv-menu-switcher__button {
    min-height: 52px;
    padding: 12px 22px;
    border: 1px solid rgba(216,178,74,.78);
    border-radius: 16px;
    color: #f7f4ea !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255,255,255,.07), transparent 44%),
        linear-gradient(180deg, rgba(23,72,42,.96), rgba(5,20,12,.98));
    box-shadow:
        0 12px 28px rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.09);
    font-size: 15px;
    font-weight: 800;
}

.viviliv-menu-switcher__button:hover,
.viviliv-menu-switcher__button:focus-visible {
    color: var(--viviliv-gold-light) !important;
    border-color: var(--viviliv-gold-light);
    background: linear-gradient(180deg, #1d5734, #0a2918);
    box-shadow:
        0 15px 32px rgba(0,0,0,.38),
        0 0 20px rgba(216,178,74,.12),
        inset 0 1px 0 rgba(255,255,255,.12);
}

.viviliv-menu-switcher__button.is-active {
    color: #06150d !important;
    border-color: #f3d77a;
    background: linear-gradient(135deg, #f3d77a 0%, #d8b24a 100%);
    box-shadow:
        0 12px 28px rgba(216,178,74,.24),
        inset 0 1px 0 rgba(255,255,255,.45);
}

/* Added drawer link inherits the original menu item styling. */
.viviliv-added-about-menu-item,
.viviliv-added-about-menu-link {
    font-family: Montserrat, Arial, sans-serif !important;
}

@media (max-width: 1024px) {
    .viviliv-about-shell {
        width: min(100% - 36px, 1180px);
    }

    .viviliv-about-benefit-grid {
        gap: 16px;
    }
}

@media (max-width: 720px) {
    .viviliv-about-page {
        left: 0;
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .viviliv-about-shell {
        width: min(100% - 24px, 1180px);
    }

    .viviliv-about-benefits {
        padding: 58px 12px 52px;
    }

    .viviliv-about-heading--why {
        margin-bottom: 28px;
    }

    .viviliv-about-heading--why h2 {
        font-size: 32px !important;
    }

    .viviliv-about-heading--why p {
        font-size: 16px !important;
    }

    .viviliv-about-benefit-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .viviliv-about-benefit {
        min-height: 138px;
        padding: 24px 20px;
    }

    .viviliv-menu-switcher {
        width: min(100% - 20px, 470px);
        gap: 8px;
        margin: 12px auto 20px;
    }

    .viviliv-menu-switcher__button {
        min-height: 48px;
        padding: 10px 8px;
        border-radius: 14px;
        font-size: 13px;
    }
}

/* =========================================================
   VIVILIV O NAS 1.4.0 — FINAL HOMEPAGE PARITY
   One canvas, one working width, no decorative filler strips.
   ========================================================= */

/* The same working width used by the wide homepage sections. */
.viviliv-about-shell {
    width: min(1320px, calc(100% - 48px)) !important;
    max-width: 1320px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

/* One uninterrupted VIVILIV canvas. */
.viviliv-about-page {
    background:
        radial-gradient(circle at 12% 7%, rgba(216,178,74,.045), transparent 24%),
        radial-gradient(circle at 88% 16%, rgba(26,63,38,.20), transparent 30%),
        #07170e !important;
}

.viviliv-about-hero,
.viviliv-about-section,
.viviliv-about-benefits,
.viviliv-about-offer,
.viviliv-about-cta {
    border-top: 0 !important;
    border-bottom: 0 !important;
    background-color: transparent !important;
}

.viviliv-about-hero {
    padding: 64px 0 84px !important;
    background:
        radial-gradient(circle at 14% 22%, rgba(216,178,74,.105), transparent 25%),
        radial-gradient(circle at 82% 30%, rgba(26,63,38,.34), transparent 34%),
        transparent !important;
}

.viviliv-about-hero__grid {
    width: min(1320px, calc(100% - 48px)) !important;
    max-width: 1320px !important;
    min-height: 620px !important;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: 66px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.viviliv-about-hero__content {
    padding: 34px 0 !important;
}

/* No underline, quote rail or full-width pseudo-banner. */
.viviliv-about-hero h1::after,
.viviliv-about-copy h2::after,
.viviliv-about-heading h2::after,
.viviliv-about-cta h2::after,
.viviliv-about-quote,
.viviliv-about-banner {
    content: none !important;
    display: none !important;
}

/* Main information panels use one identical VIVILIV material. */
.viviliv-about-panel,
.viviliv-about-cta__inner {
    background: var(--viviliv-card-surface) !important;
    border: 1px solid var(--viviliv-card-border) !important;
    border-radius: var(--viviliv-panel-radius) !important;
    box-shadow: var(--viviliv-card-shadow) !important;
}

.viviliv-about-panel {
    padding: 54px !important;
}

.viviliv-about-split {
    gap: 64px !important;
}

/* Exact visual scale of the homepage "Dlaczego VIVILIV?" section. */
.viviliv-about-benefits {
    padding: 96px 24px 72px !important;
}

.viviliv-about-benefits .viviliv-about-shell {
    width: min(1320px, 100%) !important;
    max-width: 1320px !important;
}

.viviliv-about-heading--why {
    margin: 0 auto 42px !important;
}

.viviliv-about-heading--why h2 {
    font-size: clamp(38px, 4vw, 56px) !important;
}

.viviliv-about-heading--why p {
    margin-top: 18px !important;
    font-size: 19px !important;
}

.viviliv-about-benefit-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

.viviliv-about-benefit {
    min-height: 275px !important;
    padding: 40px 30px 34px !important;
    border: 1px solid var(--viviliv-card-border) !important;
    border-radius: var(--viviliv-card-radius) !important;
    background: var(--viviliv-card-surface) !important;
    box-shadow: var(--viviliv-card-shadow) !important;
}

.viviliv-about-benefit h3 {
    margin: 0 0 16px !important;
    font-size: 24px !important;
    line-height: 1.15 !important;
}

.viviliv-about-benefit p {
    max-width: 360px !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
}

/* Give the offer and CTA the same broad, centred working area. */
.viviliv-about-heading {
    max-width: 940px !important;
}

.viviliv-about-cta {
    padding-top: 70px !important;
}

.viviliv-about-cta__inner {
    min-height: 320px !important;
    padding: 54px 58px !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(360px, .75fr) !important;
    gap: 64px !important;
}

.viviliv-about-cta__inner .viviliv-about-actions {
    justify-content: center !important;
}

/* Menu bridge stays compact and genuinely centred above both catalogues. */
.viviliv-menu-switcher {
    width: min(520px, calc(100% - 32px)) !important;
    max-width: 520px !important;
    margin: 22px auto 30px !important;
    padding: 0 !important;
    gap: 12px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.viviliv-menu-switcher__button {
    min-height: 52px !important;
    border-radius: 16px !important;
}

@media (max-width: 1024px) {
    .viviliv-about-shell,
    .viviliv-about-hero__grid {
        width: min(100% - 36px, 1320px) !important;
    }

    .viviliv-about-hero__grid,
    .viviliv-about-split,
    .viviliv-about-split--reverse,
    .viviliv-about-cta__inner {
        grid-template-columns: 1fr !important;
        gap: 34px !important;
    }

    .viviliv-about-benefit-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .viviliv-about-cta__inner {
        min-height: 0 !important;
    }
}

@media (max-width: 720px) {
    .viviliv-about-shell,
    .viviliv-about-hero__grid {
        width: min(100% - 24px, 1320px) !important;
    }

    .viviliv-about-hero {
        padding: 36px 0 54px !important;
    }

    .viviliv-about-panel,
    .viviliv-about-cta__inner {
        padding: 28px 22px !important;
    }

    .viviliv-about-benefits {
        padding: 68px 12px 54px !important;
    }

    .viviliv-about-benefit-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .viviliv-about-benefit {
        min-height: 230px !important;
        padding: 34px 24px !important;
    }

    .viviliv-about-cta {
        padding-top: 42px !important;
    }
}

/* =========================================================
   VIVILIV O NAS 1.5.0 — SOFT HERO TRANSITION + MENU TOOL ROW
   ========================================================= */

/* Hero płynnie wtapia się w główne płótno strony — bez widocznej kreski. */
body.viviliv-about-active .viviliv-about-page {
    background: #07170e !important;
}

body.viviliv-about-active .viviliv-about-hero {
    isolation: isolate;
    overflow: hidden;
    border: 0 !important;
    box-shadow: none !important;
    background: #07170e !important;
}

body.viviliv-about-active .viviliv-about-hero::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -2 !important;
    opacity: 1 !important;
    pointer-events: none !important;
    background:
        radial-gradient(circle at 14% 22%, rgba(216,178,74,.115), transparent 28%),
        radial-gradient(circle at 82% 30%, rgba(26,63,38,.38), transparent 38%),
        linear-gradient(180deg, #020604 0%, #06150d 55%, #07170e 100%) !important;
}

body.viviliv-about-active .viviliv-about-hero::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -2px !important;
    z-index: -1 !important;
    height: 180px !important;
    pointer-events: none !important;
    background: linear-gradient(
        180deg,
        rgba(7,23,14,0) 0%,
        rgba(7,23,14,.70) 58%,
        #07170e 100%
    ) !important;
}

body.viviliv-about-active .viviliv-about-story {
    position: relative !important;
    margin-top: -2px !important;
    border: 0 !important;
    background: #07170e !important;
}

/* Przełącznik jest ukryty tylko do chwili przeniesienia do wiersza narzędzi. */
body.viviliv-menu-bridge-active .viviliv-menu-switcher:not(.is-in-menu-tools) {
    visibility: hidden !important;
    position: absolute !important;
    left: -9999px !important;
}

/* Desktop: Pobierz cennik | Menu dnia / Pełne menu | liczba produktów. */
@media (min-width: 769px) {
    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        display: grid !important;
        grid-template-columns: max-content minmax(310px, 1fr) max-content !important;
        align-items: center !important;
        justify-content: stretch !important;
        column-gap: 16px !important;
        row-gap: 0 !important;
        width: 100% !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
        grid-column: 1 !important;
        order: 1 !important;
        margin: 0 !important;
        justify-self: start !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
        grid-column: 2 !important;
        order: 2 !important;
        width: min(100%, 430px) !important;
        max-width: 430px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        gap: 8px !important;
        justify-self: center !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher__button,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher__button,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher__button {
        min-height: 36px !important;
        padding: 7px 14px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
        line-height: 1 !important;
        box-shadow: none !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        grid-column: 3 !important;
        order: 3 !important;
        margin: 0 !important;
        justify-self: end !important;
        text-align: right !important;
    }
}

/* Telefon: przełącznik w pełnym wierszu, cennik i licznik poniżej. */
/* 1.6.1: zmniejszony odstęp pionowy między przełącznikiem i przyciskiem Pobierz cennik w widoku mobilnym. */
@media (max-width: 768px) {
    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        grid-template-areas:
            "switch switch"
            "price count" !important;
        gap: 8px 12px !important;
        align-items: center !important;
        width: 100% !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
        grid-area: switch !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        gap: 8px !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher__button,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher__button,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher__button {
        min-height: 42px !important;
        padding: 9px 10px !important;
        border-radius: 14px !important;
        font-size: 13px !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
        grid-area: price !important;
        margin: 0 !important;
        justify-self: start !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        grid-area: count !important;
        margin: 0 !important;
        justify-self: end !important;
    }
}

/* =========================================================
   VIVILIV 1.6.0 — HOME HERO SOFT LANDING + EXACT MENU ROW
   ========================================================= */

/* Główna: obraz Hero przechodzi płynnie w zielone płótno sekcji Skomponuj. */
body.home.viviliv-home-transition-active .viviliv-hero-v3 {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    margin-bottom: -2px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

body.home.viviliv-home-transition-active .viviliv-hero-v3::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -2px !important;
    z-index: 8 !important;
    height: clamp(150px, 18vw, 260px) !important;
    pointer-events: none !important;
    background:
        radial-gradient(ellipse at 50% 100%, rgba(26,63,38,.30), transparent 65%),
        linear-gradient(
            180deg,
            rgba(6,21,13,0) 0%,
            rgba(6,21,13,.10) 22%,
            rgba(6,21,13,.48) 55%,
            rgba(6,21,13,.88) 82%,
            #06150d 100%
        ) !important;
}

body.home.viviliv-home-transition-active .viviliv-menu-builder {
    margin-top: -2px !important;
    border-top: 0 !important;
    background:
        radial-gradient(circle at 18% 18%, rgba(216,178,74,.10), transparent 30%),
        radial-gradient(circle at 82% 28%, rgba(216,178,74,.07), transparent 32%),
        linear-gradient(180deg, #06150d 0%, #07170e 18%, #020604 72%, #07170e 100%) !important;
}

/* Menu: cały wiersz kończy się dokładnie na prawej ramce siatki produktów. */
@media (min-width: 769px) {
    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        width: var(--viviliv-products-grid-width, 100%) !important;
        max-width: var(--viviliv-products-grid-width, 100%) !important;
        min-width: 0 !important;
        grid-template-columns: max-content minmax(260px, 1fr) max-content !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        justify-self: end !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.0 — COMPACT FLOW + CLEAN HERO TITLE
   ========================================================= */

/* Awaryjnie ukryj dawny kicker i nagłówek, jeśli pozostały w cache. */
body.viviliv-about-active .viviliv-about-hero__content > .viviliv-about-kicker:first-child,
body.viviliv-about-active .viviliv-about-hero__content > h1#viviliv-about-title {
    display: none !important;
}

/* Główne hasło staje się jedynym tytułem Hero. */
body.viviliv-about-active .viviliv-about-hero__content > h2#viviliv-about-title {
    margin-top: 0 !important;
}

/* Mniejsze odstępy między kolejnymi blokami O nas. */
body.viviliv-about-active .viviliv-about-story {
    padding-top: 42px !important;
    padding-bottom: 28px !important;
}

body.viviliv-about-active .viviliv-about-kitchen {
    padding-top: 28px !important;
    padding-bottom: 34px !important;
}

body.viviliv-about-active .viviliv-about-benefits {
    padding: 42px 24px 28px !important;
}

body.viviliv-about-active .viviliv-about-offer {
    padding-top: 28px !important;
    padding-bottom: 24px !important;
}

body.viviliv-about-active .viviliv-about-cta {
    padding-top: 24px !important;
    padding-bottom: 12px !important;
}

/* Strona główna: ciaśniejsze, bardziej premium zejście z Hero do sekcji Skomponuj. */
body.home.viviliv-home-transition-active .viviliv-hero-v3::after {
    height: clamp(100px, 12vw, 170px) !important;
    background:
        radial-gradient(ellipse at 50% 100%, rgba(26,63,38,.28), transparent 62%),
        linear-gradient(
            180deg,
            rgba(6,21,13,0) 0%,
            rgba(6,21,13,.08) 20%,
            rgba(6,21,13,.34) 48%,
            rgba(6,21,13,.72) 76%,
            #06150d 100%
        ) !important;
}

body.home.viviliv-home-transition-active .viviliv-menu-builder {
    margin-top: -30px !important;
    padding-top: 22px !important;
}

@media (max-width: 720px) {
    body.viviliv-about-active .viviliv-about-story {
        padding-top: 26px !important;
        padding-bottom: 18px !important;
    }

    body.viviliv-about-active .viviliv-about-kitchen {
        padding-top: 18px !important;
        padding-bottom: 22px !important;
    }

    body.viviliv-about-active .viviliv-about-benefits {
        padding: 30px 12px 20px !important;
    }

    body.viviliv-about-active .viviliv-about-offer {
        padding-top: 20px !important;
        padding-bottom: 18px !important;
    }

    body.viviliv-about-active .viviliv-about-cta {
        padding-top: 18px !important;
        padding-bottom: 8px !important;
    }

    body.home.viviliv-home-transition-active .viviliv-menu-builder {
        margin-top: -16px !important;
        padding-top: 14px !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.1 — WYRAŹNY, PŁYNNY RUCH FASADY
   ========================================================= */

body.viviliv-about-active .viviliv-about-photo-card.is-facade-motion {
    overflow: hidden !important;
    isolation: isolate !important;
}

body.viviliv-about-active .viviliv-about-photo-card.is-facade-motion img {
    transform-origin: 50% 50% !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    will-change: transform !important;
    animation: vivilivFacadePopupMotion 13.5s cubic-bezier(.45, 0, .55, 1) -3s infinite alternate !important;
}

@keyframes vivilivFacadePopupMotion {
    0% {
        transform: scale(1.045) translate3d(-1.9%, 1.0%, 0);
    }
    50% {
        transform: scale(1.085) translate3d(.4%, -.35%, 0);
    }
    100% {
        transform: scale(1.125) translate3d(1.8%, -1.15%, 0);
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.2 — PREMIUM MENU SWITCHER TRUE CENTER
   Pobierz cennik | [Menu dnia / Pełne menu] | liczba produktów
   ========================================================= */

@media (min-width: 769px) {

    /*
     * Dwie boczne kolumny mają identyczną szerokość 1fr.
     * Dzięki temu przełącznik stoi w geometrycznym środku
     * całej realnej siatki produktów, a nie środku wolnego miejsca.
     */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        position: relative !important;

        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        align-items: center !important;
        justify-content: stretch !important;

        column-gap: 18px !important;
        row-gap: 0 !important;

        min-height: 42px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* Pobierz cennik — dokładnie przy lewej krawędzi siatki. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download {
        grid-column: 1 !important;
        justify-self: start !important;
        align-self: center !important;

        margin: 0 !important;
        white-space: nowrap !important;
    }

    /* Przełącznik — prawdziwy środek całego rzędu. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher {
        grid-column: 2 !important;
        justify-self: center !important;
        align-self: center !important;

        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;

        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(118px, 132px)) !important;
        gap: 9px !important;

        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    /* Premium, zwarte przyciski bez rozmycia fontu. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 8px 15px !important;

        border: 1px solid rgba(216,178,74,.72) !important;
        border-radius: 999px !important;

        color: #f7f4ea !important;
        background:
            linear-gradient(180deg, rgba(26,74,46,.82), rgba(8,23,15,.98)) !important;

        font-family: "Montserrat", Arial, sans-serif !important;
        font-size: 13px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-align: center !important;
        text-decoration: none !important;
        white-space: nowrap !important;

        text-shadow: none !important;
        -webkit-font-smoothing: antialiased !important;
        text-rendering: optimizeLegibility !important;

        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.055),
            0 7px 18px rgba(0,0,0,.20) !important;

        transition:
            background .18s ease,
            border-color .18s ease,
            color .18s ease,
            box-shadow .18s ease,
            transform .18s ease !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button:hover,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button:hover,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button:hover {
        color: #f3d77a !important;
        border-color: #f3d77a !important;
        background:
            linear-gradient(180deg, rgba(31,87,52,.96), rgba(10,31,19,.99)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.08),
            0 9px 22px rgba(0,0,0,.25),
            0 0 16px rgba(216,178,74,.10) !important;
        transform: translateY(-1px) !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button.is-active,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button.is-active,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button.is-active {
        color: #06150d !important;
        border-color: rgba(243,215,122,.98) !important;
        background:
            linear-gradient(135deg, #f6dd86 0%, #d8b24a 100%) !important;

        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.42),
            0 8px 22px rgba(216,178,74,.19) !important;
    }

    /* Liczba produktów — dokładnie przy prawej krawędzi siatki. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number {
        grid-column: 3 !important;
        justify-self: end !important;
        align-self: center !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: right !important;
        white-space: nowrap !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.3 — MOBILE TOOLBAR RHYTHM
   Taki sam pionowy odstęp nad i pod przełącznikiem menu.
   ========================================================= */

@media (max-width: 768px) {

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        row-gap: 12px !important;
        column-gap: 12px !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher {
        margin: 0 !important;
        padding: 0 !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.4 — DESKTOP SWITCHER HARD CENTER
   Pewne centrowanie względem pełnej szerokości siatki produktów.
   ========================================================= */

@media (min-width: 769px) {

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        position: relative !important;

        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        min-height: 42px !important;
        width: var(--viviliv-products-grid-width, 100%) !important;
        max-width: var(--viviliv-products-grid-width, 100%) !important;

        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* Lewa krawędź — Pobierz cennik. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download {
        position: relative !important;
        z-index: 2 !important;

        flex: 0 0 auto !important;
        margin: 0 !important;

        align-self: center !important;
    }

    /*
     * Prawdziwy geometryczny środek:
     * pozycja 50% całego wiersza, niezależnie od szerokości
     * przycisku Pobierz cennik i napisu z liczbą produktów.
     */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        z-index: 3 !important;

        transform: translate(-50%, -50%) !important;

        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;

        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(118px, 132px)) !important;
        gap: 9px !important;

        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    /* Prawa krawędź — liczba produktów. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number {
        position: relative !important;
        z-index: 2 !important;

        flex: 0 0 auto !important;
        margin: 0 0 0 auto !important;
        padding: 0 !important;

        align-self: center !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.5 — MOBILE SWITCHER TRUE CENTER
   Kompaktowe Menu dnia / Pełne menu pośrodku ekranu.
   ========================================================= */

@media (max-width: 768px) {

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas:
            "switch switch"
            "price count" !important;

        row-gap: 12px !important;
        column-gap: 12px !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* Kompaktowy przełącznik dokładnie pośrodku. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher {
        grid-area: switch !important;
        justify-self: center !important;
        align-self: center !important;

        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;

        width: auto !important;
        max-width: calc(100vw - 42px) !important;
        min-width: 0 !important;

        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(112px, 132px)) !important;
        gap: 8px !important;

        margin: 0 auto !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher__button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        padding: 9px 12px !important;
        border-radius: 14px !important;
        font-size: 13px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    /* Dolny wiersz pozostaje po krawędziach siatki. */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-price-list-download {
        grid-area: price !important;
        justify-self: start !important;
        margin: 0 !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-category-count__number {
        grid-area: count !important;
        justify-self: end !important;
        margin: 0 !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.6 — MOBILE LOWER GAP ONLY
   Dokładnie 12 px między przełącznikiem a dolnym wierszem.
   Bez zmian położenia, szerokości i wyglądu przycisków.
   ========================================================= */

@media (max-width: 768px) {

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        row-gap: 0 !important;
    }

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher
    .viviliv-menu-switcher {
        margin-top: 0 !important;
        margin-right: auto !important;
        margin-bottom: 12px !important;
        margin-left: auto !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.7 — PREMIUM MENU TOOLS ALIGNMENT
   1) Desktop: prawdziwe centrowanie przełącznika.
   2) Mobile: identyczny górny i dolny odstęp wokół przełącznika.
   ========================================================= */

/* ---------- DESKTOP ---------- */
@media (min-width: 769px) {

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        position: relative !important;
        display: grid !important;
        grid-template-columns: max-content minmax(0, 1fr) max-content !important;
        align-items: center !important;
        column-gap: 18px !important;

        width: var(--viviliv-products-grid-width, 100%) !important;
        max-width: var(--viviliv-products-grid-width, 100%) !important;
        min-width: 0 !important;
        min-height: 44px !important;

        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;

        justify-self: start !important;
        align-self: center !important;
        margin: 0 !important;
        z-index: 2 !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;

        justify-self: center !important;
        align-self: center !important;

        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;

        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(118px, 132px)) !important;
        gap: 9px !important;

        margin: 0 auto !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        z-index: 3 !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;

        justify-self: end !important;
        align-self: center !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: right !important;
        white-space: nowrap !important;
        z-index: 2 !important;
    }
}

/* ---------- MOBILE ---------- */
@media (max-width: 768px) {

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas:
            "switch switch"
            "price count" !important;

        row-gap: 0 !important;
        column-gap: 12px !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
        grid-area: switch !important;
        justify-self: center !important;
        align-self: center !important;

        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;

        width: auto !important;
        max-width: calc(100vw - 42px) !important;
        min-width: 0 !important;

        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(112px, 132px)) !important;
        gap: 8px !important;

        margin-top: 12px !important;
        margin-right: auto !important;
        margin-bottom: 12px !important;
        margin-left: auto !important;

        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
        grid-area: price !important;
        justify-self: start !important;
        align-self: center !important;
        margin: 0 !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        grid-area: count !important;
        justify-self: end !important;
        align-self: center !important;
        margin: 0 !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.8 — FINAL MENU SWITCHER CENTER FIX
   Desktop: switcher truly centered in tools row.
   Mobile: equal spacing above and below switcher.
   ========================================================= */

@media (min-width: 769px) {
    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        position: relative !important;
        display: block !important;
        width: var(--viviliv-products-grid-width, 100%) !important;
        max-width: var(--viviliv-products-grid-width, 100%) !important;
        min-height: 46px !important;
        padding: 0 118px !important;
        box-sizing: border-box !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
        position: absolute !important;
        left: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        z-index: 2 !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        margin: 0 !important;
        width: max-content !important;
        max-width: none !important;
        min-width: 0 !important;
        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(118px, 132px)) !important;
        gap: 9px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        z-index: 3 !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        position: absolute !important;
        right: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: right !important;
        white-space: nowrap !important;
        z-index: 2 !important;
    }
}

@media (max-width: 768px) {
    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas:
            "switch switch"
            "price count" !important;
        align-items: center !important;
        row-gap: 12px !important;
        column-gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
        grid-area: switch !important;
        justify-self: center !important;
        align-self: center !important;
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: auto !important;
        max-width: calc(100vw - 42px) !important;
        min-width: 0 !important;
        display: inline-grid !important;
        grid-template-columns: repeat(2, minmax(112px, 132px)) !important;
        gap: 8px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
        grid-area: price !important;
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        justify-self: start !important;
        align-self: center !important;
        margin: 0 !important;
    }

    body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
    body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
        grid-area: count !important;
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        justify-self: end !important;
        align-self: center !important;
        margin: 0 !important;
        text-align: right !important;
        white-space: nowrap !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.7.9 — HARD CENTER FIX FOR MENU SWITCHER
   ========================================================= */
@media (min-width: 769px) {
  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    column-gap: 16px !important;
    row-gap: 0 !important;
    width: var(--viviliv-products-grid-width, 100%) !important;
    max-width: var(--viviliv-products-grid-width, 100%) !important;
    min-height: 46px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 0 !important;
    justify-self: start !important;
    align-self: center !important;
    z-index: 2 !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 0 auto !important;
    justify-self: center !important;
    align-self: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    display: inline-grid !important;
    grid-template-columns: repeat(2, minmax(118px, 132px)) !important;
    gap: 9px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    z-index: 3 !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: end !important;
    align-self: center !important;
    text-align: right !important;
    white-space: nowrap !important;
    z-index: 2 !important;
  }
}

@media (max-width: 768px) {
  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "switch switch" "price count" !important;
    align-items: center !important;
    row-gap: 12px !important;
    column-gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
    grid-area: switch !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    justify-self: center !important;
    align-self: center !important;
    margin: 0 !important;
    width: auto !important;
    max-width: calc(100vw - 42px) !important;
    display: inline-grid !important;
    grid-template-columns: repeat(2, minmax(112px, 132px)) !important;
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
    grid-area: price !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    justify-self: start !important;
    align-self: center !important;
    margin: 0 !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
    grid-area: count !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    justify-self: end !important;
    align-self: center !important;
    margin: 0 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }
}


/* =========================================================
   VIVILIV O NAS 1.8.0 — EXACT F12 STRUCTURE FALLBACK
   ========================================================= */

body.viviliv-menu-bridge-active
.viviliv-menu-category-count.has-viviliv-menu-switcher
> .viviliv-menu-category-count__title,
body.page-id-2237
.viviliv-menu-category-count.has-viviliv-menu-switcher
> .viviliv-menu-category-count__title,
body.page-id-2689
.viviliv-menu-category-count.has-viviliv-menu-switcher
> .viviliv-menu-category-count__title {
    display: none !important;
}

@media (max-width: 768px) {
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        row-gap: 12px !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.8.1 — MOBILE TABS / SWITCHER EQUAL GAP
   Realna struktura z F12:
   .viviliv-menu-tabs
   .viviliv-menu-category-count.has-viviliv-menu-switcher
   ========================================================= */

@media (max-width: 768px) {

    /* 12 px od grup kategorii do Menu dnia / Pełne menu. */
    body.viviliv-menu-bridge-active .viviliv-menu-tabs,
    body.page-id-2237 .viviliv-menu-tabs,
    body.page-id-2689 .viviliv-menu-tabs,
    body.page-id-2237 .viviliv-menu-sticky-group .viviliv-menu-tabs,
    body.page-id-2689 .viviliv-menu-sticky-group .viviliv-menu-tabs {
        margin-bottom: 12px !important;
    }

    /*
     * Kontener zaczyna się bez dodatkowego marginesu.
     * Wewnątrz pozostaje row-gap: 12 px pomiędzy przełącznikiem
     * a Pobierz cennik / liczbą produktów.
     */
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        margin-top: 0 !important;
        row-gap: 12px !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.8.3 — MOBILE SIDE AIR FOR TOOLS ROW
   Lekki odstęp od lewej i prawej krawędzi ekranu.
   ========================================================= */

@media (max-width: 768px) {

    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        padding-left: 8px !important;
        padding-right: 8px !important;
        box-sizing: border-box !important;
    }
}


/* =========================================================
   VIVILIV O NAS 1.8.4 — MOBILE ALIGN TO "WSZYSTKIE"
   Boczne odstępy są mierzone przez JS od realnej pozycji
   pierwszego przycisku kategorii.
   ========================================================= */

@media (max-width: 768px) {
    body.viviliv-menu-bridge-active
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2237
    .viviliv-menu-category-count.has-viviliv-menu-switcher,
    body.page-id-2689
    .viviliv-menu-category-count.has-viviliv-menu-switcher {
        box-sizing: border-box !important;
    }
}

/* =========================================================
   VIVILIV O NAS 1.8.5 — TOOLS ROW ALWAYS FULL WIDTH
   Desktop: Pobierz cennik, Menu dnia / Pełne menu i licznik
   zajmują cały wiersz zakładek/wyszukiwarki niezależnie od
   liczby widocznych produktów po filtrowaniu.
   ========================================================= */
@media (min-width: 769px) {
  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    grid-template-areas: "price switch count" !important;
    inline-size: var(--viviliv-menu-tools-row-width, 100%) !important;
    width: var(--viviliv-menu-tools-row-width, 100%) !important;
    max-inline-size: var(--viviliv-menu-tools-row-width, 100%) !important;
    max-width: var(--viviliv-menu-tools-row-width, 100%) !important;
    min-inline-size: 0 !important;
    min-width: 0 !important;
    margin-left: var(--viviliv-menu-tools-row-offset, 0px) !important;
    margin-right: 0 !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-price-list-download {
    grid-area: price !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-switcher {
    grid-area: switch !important;
  }

  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
    grid-area: count !important;
  }
}


/* =========================================================
   VIVILIV O NAS 1.8.6 — DESKTOP COUNT SAFE INSET
   Licznik produktów ma mały odstęp od prawej krawędzi
   wiersza / panelu koszyka. Mobile bez zmian.
   ========================================================= */
@media (min-width: 769px) {
  body.viviliv-menu-bridge-active .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2237 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number,
  body.page-id-2689 .viviliv-menu-category-count.has-viviliv-menu-switcher .viviliv-menu-category-count__number {
    margin-right: 12px !important;
  }
}
