/* CM Klara navigation v10 — active hierarchy, diagnostic facility branding and refined motion. */

@media (min-width: 1025px) {
    /* Aktywna ścieżka ma być zauważalna bez dokładania kolejnego koloru/tła. */
    .cmk-nav .cmk-nav__mega-tab.is-active,
    .cmk-nav .cmk-nav__mega-category-link.is-current,
    .cmk-nav .cmk-nav__mega-category-link.is-active-preview,
    .cmk-nav .cmk-nav__mega-group-title a[aria-current="page"],
    .cmk-nav .cmk-nav__mega-links a[aria-current="page"],
    .cmk-nav .cmk-nav__submenu-item.is-current > .cmk-nav__submenu-link,
    .cmk-nav .cmk-nav__submenu-link.is-current {
        font-weight: 700 !important;
    }

    /* Krótka, korporacyjna zmiana treści po przełączeniu kategorii mega-menu. */
    .cmk-nav .cmk-nav__mega-panel.is-active {
        animation: cmk-mega-panel-in .16s cubic-bezier(.22,.61,.36,1) both;
        transform-origin: top left;
    }

    @keyframes cmk-mega-panel-in {
        from { opacity: .72; transform: translate3d(5px, 0, 0); }
        to   { opacity: 1; transform: translate3d(0, 0, 0); }
    }

    /* Diagnostyka: kompaktowe lockupy placówek z adresem. */
    .cmk-nav .cmk-nav__mega-group.is-cmk-facility .cmk-nav__mega-group-title {
        margin-bottom: 12px !important;
    }

    .cmk-nav .cmk-nav__facility-link {
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        min-height: 45px !important;
        padding: 3px 0 !important;
        color: #404041 !important;
        text-decoration: none !important;
    }

    .cmk-nav .cmk-nav__facility-logo {
        display: block !important;
        width: auto !important;
        max-width: 104px !important;
        height: 31px !important;
        object-fit: contain !important;
        flex: 0 0 auto !important;
    }

    .cmk-nav .cmk-nav__facility-fallback-mark {
        width: 31px !important;
        height: 31px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 31px !important;
        border: 2px solid #d71920 !important;
        border-radius: 50% !important;
        color: #d71920 !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
    }

    .cmk-nav .cmk-nav__facility-copy {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
        gap: 2px !important;
    }

    .cmk-nav .cmk-nav__facility-name {
        color: #404041 !important;
        font-size: 12.5px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
    }

    .cmk-nav .cmk-nav__facility-address {
        color: #7b8088 !important;
        font-size: 10.5px !important;
        font-weight: 400 !important;
        line-height: 1.2 !important;
        letter-spacing: .005em !important;
    }

    /* Logo w sticky zachowuje się jak dyskretny element marki, nie jak CTA. */
    .cmk-nav.cmk-nav--fixed .cmk-nav__sticky-brand {
        transition: transform .18s ease, opacity .18s ease, filter .18s ease !important;
        transform-origin: left center !important;
    }

    .cmk-nav.cmk-nav--fixed .cmk-nav__sticky-brand:hover,
    .cmk-nav.cmk-nav--fixed .cmk-nav__sticky-brand:focus-visible {
        transform: translateY(-50%) translateY(-1px) scale(1.018) !important;
        opacity: .96 !important;
        filter: drop-shadow(0 3px 5px rgba(64,64,65,.10)) !important;
        outline: 0 !important;
    }
}

@media (max-width: 1024px) {
    /* Minimalnie szybciej niż v8, ale nadal wystarczająco długo, by zobaczyć transformację. */
    body > .cmk-nav-mobile__panel .cmk-nav-mobile__search-form {
        transition:
            width .38s cubic-bezier(.22,.61,.36,1),
            min-width .38s cubic-bezier(.22,.61,.36,1),
            background-color .23s ease,
            border-radius .36s cubic-bezier(.22,.61,.36,1),
            border-color .23s ease,
            box-shadow .23s ease,
            padding .36s cubic-bezier(.22,.61,.36,1) !important;
    }

    body > .cmk-nav-mobile__panel .cmk-nav-mobile__search-form button[type="submit"] {
        transition:
            border-radius .36s cubic-bezier(.22,.61,.36,1),
            width .36s cubic-bezier(.22,.61,.36,1),
            height .36s cubic-bezier(.22,.61,.36,1),
            flex-basis .36s cubic-bezier(.22,.61,.36,1),
            box-shadow .22s ease !important;
    }

    body > .cmk-nav-mobile__panel .cmk-nav-mobile__search-icon {
        transition: width .27s ease .05s, flex-basis .27s ease .05s, opacity .21s ease .05s !important;
    }

    body > .cmk-nav-mobile__panel .cmk-nav-mobile__search-form input[type="search"] {
        transition: opacity .24s ease .07s, width .31s cubic-bezier(.22,.61,.36,1) .03s !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cmk-nav .cmk-nav__mega-panel.is-active,
    .cmk-nav.cmk-nav--fixed .cmk-nav__sticky-brand,
    body > .cmk-nav-mobile__panel .cmk-nav-mobile__search-form,
    body > .cmk-nav-mobile__panel .cmk-nav-mobile__search-form button[type="submit"] {
        animation: none !important;
        transition-duration: .01ms !important;
    }
}
