/*
 * TKF Site Chrome — Header v0.2.0
 *
 * Color values below are verified as present in the existing
 * Header 47 implementation. They are not represented here as a
 * complete corporate brand guide.
 */

:root {
    --tkf-accent: #78be20;
    --tkf-ink: #212121;
    --tkf-muted: #616161;
    --tkf-surface: #ffffff;
    --tkf-surface-soft: #f5f5f5;
    --tkf-border: #e0e0e0;

    --tkf-header-height: 76px;
    --tkf-max-width: 1440px;
    --tkf-focus-width: 3px;
}

.tkf-site-chrome,
.tkf-site-chrome * {
    box-sizing: border-box;
}

.tkf-site-chrome a,
.tkf-site-chrome button {
    font: inherit;
}

.tkf-site-chrome a:focus-visible,
.tkf-site-chrome button:focus-visible {
    outline: var(--tkf-focus-width) solid var(--tkf-ink);
    outline-offset: 3px;
}

.tkf-utility {
    background: var(--tkf-ink);
    color: var(--tkf-surface);
}

.tkf-utility__inner {
    width: min(
        calc(100% - 40px),
        var(--tkf-max-width)
    );
    min-height: 32px;
    margin: 0 auto;

    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 24px;

    font-size: 13px;
    line-height: 1.25;
}

.tkf-utility__link {
    color: var(--tkf-surface);
    text-decoration: none;
}

.tkf-utility__link:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.tkf-site-header {
    position: sticky;
    top: 0;
    z-index: 9990;

    width: 100%;
    min-height: var(--tkf-header-height);

    background: var(--tkf-surface);
    border-bottom: 1px solid var(--tkf-border);
}

body.admin-bar .tkf-site-header {
    top: 32px;
}

.tkf-site-header__inner {
    position: relative;

    width: min(
        calc(100% - 40px),
        var(--tkf-max-width)
    );
    min-height: var(--tkf-header-height);
    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(140px, 190px)
        minmax(0, 1fr)
        auto;
    align-items: center;
    gap: 28px;
}

.tkf-site-header__brand {
    display: inline-flex;
    align-items: center;
    justify-self: start;

    min-width: 0;
}

.tkf-site-header__logo {
    display: block;
    width: auto;
    max-width: 170px;
    max-height: 58px;
    object-fit: contain;
}

.tkf-site-header__actions {
    grid-column: 3;

    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
}

.tkf-donate {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 44px;
    padding: 10px 20px;

    border: 2px solid var(--tkf-accent);
    border-radius: 4px;

    background: var(--tkf-accent);
    color: var(--tkf-ink);

    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.tkf-donate:hover {
    filter: brightness(0.95);
}

.tkf-menu-toggle {
    display: none;

    min-width: 48px;
    min-height: 48px;
    padding: 7px;

    border: 0;
    background: transparent;
    color: var(--tkf-ink);

    cursor: pointer;
}

.tkf-menu-toggle__label {
    position: absolute;

    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;

    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;

    border: 0;
}

.tkf-menu-toggle__icon {
    display: grid;
    width: 27px;
    gap: 5px;
}

.tkf-menu-toggle__icon span {
    display: block;

    width: 100%;
    height: 2px;

    background: currentColor;

    transition:
        transform 180ms ease,
        opacity 180ms ease;
}

.tkf-menu-toggle[aria-expanded="true"]
.tkf-menu-toggle__icon span:nth-child(1) {
    transform:
        translateY(7px)
        rotate(45deg);
}

.tkf-menu-toggle[aria-expanded="true"]
.tkf-menu-toggle__icon span:nth-child(2) {
    opacity: 0;
}

.tkf-menu-toggle[aria-expanded="true"]
.tkf-menu-toggle__icon span:nth-child(3) {
    transform:
        translateY(-7px)
        rotate(-45deg);
}

.tkf-nav-panel {
    grid-column: 2;
    grid-row: 1;

    min-width: 0;
}

.tkf-nav__list,
.tkf-nav__submenu {
    padding: 0;
    margin: 0;
    list-style: none;
}

.tkf-nav__list {
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
    gap: 2px;
}

.tkf-nav__item {
    position: relative;
}

.tkf-nav__item--depth-0 {
    display: flex;
    align-items: center;
}

.tkf-nav__link,
.tkf-nav__parent-button,
.tkf-nav__submenu-toggle {
    color: var(--tkf-ink);
}

.tkf-nav__link {
    display: inline-flex;
    align-items: center;

    min-height: 46px;
    padding: 10px 9px;

    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
}

.tkf-nav__item--depth-0 > .tkf-nav__link:hover,
.tkf-nav__item--depth-0.is-current > .tkf-nav__link {
    text-decoration: underline;
    text-decoration-color: var(--tkf-accent);
    text-decoration-thickness: 3px;
    text-underline-offset: 8px;
}

.tkf-nav__submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 32px;
    min-height: 44px;
    padding: 0;

    border: 0;
    background: transparent;

    cursor: pointer;
}

.tkf-nav__parent-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    min-height: 46px;
    padding: 10px 9px;

    border: 0;
    background: transparent;

    font-weight: 600;

    cursor: pointer;
}

.tkf-nav__chevron {
    width: 8px;
    height: 8px;

    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;

    transform:
        translateY(-2px)
        rotate(45deg);

    transition: transform 160ms ease;
}

[aria-expanded="true"] > .tkf-nav__chevron {
    transform:
        translateY(2px)
        rotate(225deg);
}

.tkf-nav__submenu {
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    z-index: 20;

    display: none;

    width: max-content;
    min-width: 230px;
    max-width: 340px;
    padding: 8px;

    background: var(--tkf-surface);
    border: 1px solid var(--tkf-border);
    box-shadow:
        0 14px 34px
        rgba(0, 0, 0, 0.12);
}

.tkf-nav__submenu .tkf-nav__item {
    display: flex;
    align-items: center;
}

.tkf-nav__submenu .tkf-nav__link {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;

    font-weight: 500;
}

.tkf-nav__submenu .tkf-nav__link:hover,
.tkf-nav__submenu .tkf-nav__link:focus-visible {
    background: var(--tkf-surface-soft);
}

.tkf-nav__item.is-open > .tkf-nav__submenu {
    display: block;
}

.tkf-nav-panel__utility {
    display: none;
}

.tkf-nav__error {
    margin: 0;
    padding: 12px;
}

/*
 * Desktop pointer enhancement.
 * Click/keyboard toggle remains available.
 */
@media (min-width: 1024px) {
    .tkf-nav__item--depth-0:hover >
    .tkf-nav__submenu,

    .tkf-nav__item--depth-0:focus-within >
    .tkf-nav__submenu {
        display: block;
    }
}

@media (max-width: 1199px) and (min-width: 1024px) {
    .tkf-site-header__inner {
        width: min(
            calc(100% - 28px),
            var(--tkf-max-width)
        );
        gap: 16px;
    }

    .tkf-site-header__logo {
        max-width: 145px;
    }

    .tkf-nav__link,
    .tkf-nav__parent-button {
        padding-left: 6px;
        padding-right: 6px;
        font-size: 14px;
    }

    .tkf-donate {
        padding-left: 15px;
        padding-right: 15px;
    }
}

/*
 * Mobile / tablet navigation.
 *
 * Without JS the menu remains visible and usable.
 * JS enhancement converts it into a controlled drawer.
 */
@media (max-width: 1023px) {
    :root {
        --tkf-header-height: 68px;
    }

    .tkf-utility {
        display: none;
    }

    .tkf-site-header__inner {
        width: calc(100% - 28px);

        grid-template-columns:
            minmax(0, 1fr)
            auto;
        gap: 12px;
    }

    .tkf-site-header__brand {
        grid-column: 1;
    }

    .tkf-site-header__logo {
        max-width: 126px;
        max-height: 48px;
    }

    .tkf-site-header__actions {
        grid-column: 2;
    }

    .tkf-donate {
        min-height: 42px;
        padding: 8px 12px;

        font-size: 14px;
    }

    .tkf-menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .tkf-nav-panel {
        grid-column: 1 / -1;
        grid-row: 2;

        padding-bottom: 16px;
    }

    .tkf-nav__list {
        display: block;
    }

    .tkf-nav__item--depth-0 {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr)
            auto;

        border-top: 1px solid var(--tkf-border);
    }

    .tkf-nav__link,
    .tkf-nav__parent-button {
        width: 100%;
        min-height: 50px;
        padding: 13px 4px;

        justify-content: flex-start;

        font-size: 16px;
        text-align: left;
    }

    .tkf-nav__submenu-toggle {
        width: 50px;
        min-height: 50px;
    }

    .tkf-nav__submenu {
        position: static;

        grid-column: 1 / -1;

        display: block;

        width: 100%;
        min-width: 0;
        max-width: none;

        padding: 0 0 8px 14px;

        border: 0;
        border-left: 3px solid var(--tkf-accent);
        box-shadow: none;
    }

    .tkf-nav__submenu .tkf-nav__item {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr)
            auto;
    }

    .tkf-nav-panel__utility {
        display: grid;
        gap: 4px;

        padding-top: 16px;
        margin-top: 12px;

        border-top: 1px solid var(--tkf-border);
    }

    .tkf-nav-panel__utility a {
        display: flex;
        align-items: center;

        min-height: 44px;

        color: var(--tkf-ink);
        font-weight: 600;
        text-decoration: none;
    }

    /*
     * Drawer behavior only once JS has initialized.
     */
    .tkf-site-chrome-js .tkf-nav-panel {
        position: fixed;
        top: var(
            --tkf-site-header-bottom,
            68px
        );
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 9980;

        overflow-y: auto;
        overscroll-behavior: contain;

        padding:
            14px
            20px
            max(24px, env(safe-area-inset-bottom));

        background: var(--tkf-surface);

        visibility: hidden;
        opacity: 0;
        transform: translateY(-8px);
        pointer-events: none;

        transition:
            opacity 160ms ease,
            transform 160ms ease,
            visibility 160ms step-end;
    }

    .tkf-site-chrome-js
    .tkf-nav-panel.is-open {
        visibility: visible;
        opacity: 1;
        transform: none;
        pointer-events: auto;

        transition:
            opacity 160ms ease,
            transform 160ms ease,
            visibility 0ms step-start;
    }

    .tkf-site-chrome-js
    .tkf-nav__submenu {
        display: none;
    }

    .tkf-site-chrome-js
    .tkf-nav__item.is-open >
    .tkf-nav__submenu {
        display: block;
    }

    body.tkf-menu-open {
        overflow: hidden;
    }
}

@media (max-width: 359px) {
    .tkf-site-header__inner {
        width: calc(100% - 20px);
        gap: 6px;
    }

    .tkf-site-header__logo {
        max-width: 112px;
    }

    .tkf-donate {
        padding-left: 9px;
        padding-right: 9px;
    }

    .tkf-site-chrome-js .tkf-nav-panel {
        padding-left: 14px;
        padding-right: 14px;
    }
}

@media (max-width: 782px) {
    body.admin-bar .tkf-site-header {
        top: 46px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tkf-site-chrome *,
    .tkf-site-chrome *::before,
    .tkf-site-chrome *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* ==========================================================
   TKF LEGACY-COMPATIBILITY SKIN v0.2.1

   Purpose:
   Preserve the institution's established visible design language
   while retaining the modern Site Chrome architecture.

   Approved/legacy-visible palette is intentionally preserved.
   ========================================================== */


/* ----------------------------------------------------------
   Global chrome surfaces
   ---------------------------------------------------------- */

.tkf-site-chrome {
    --tkf-header-height: 82px;
}


.tkf-utility {
    background:
        #171717;

    color:
        #ffffff;

    border-bottom:
        1px solid
        rgba(255, 255, 255, .12);
}


.tkf-utility__inner {
    width:
        min(
            calc(100% - 40px),
            var(--tkf-max-width)
        );

    min-height:
        30px;

    gap:
        22px;

    font-size:
        13px;

    font-weight:
        500;
}


.tkf-utility__link {
    color:
        #ffffff;
}


.tkf-utility__link:hover {
    color:
        #78be20;
}


/* ----------------------------------------------------------
   Primary institutional header
   ---------------------------------------------------------- */

.tkf-site-header {
    background:
        #212121;

    color:
        #ffffff;

    border-bottom:
        3px solid
        #78be20;

    box-shadow:
        0 2px 7px
        rgba(0, 0, 0, .16);
}


.tkf-site-header__inner {
    min-height:
        var(--tkf-header-height);

    grid-template-columns:
        minmax(170px, 205px)
        minmax(0, 1fr)
        auto;

    gap:
        24px;
}


/* ----------------------------------------------------------
   Brand
   ---------------------------------------------------------- */

.tkf-site-header__brand {
    min-width:
        0;
}


.tkf-site-header__logo {
    width:
        auto;

    max-width:
        188px;

    max-height:
        64px;

    object-fit:
        contain;
}


/* ----------------------------------------------------------
   Primary navigation
   ---------------------------------------------------------- */

.tkf-nav__link,
.tkf-nav__parent-button,
.tkf-nav__submenu-toggle,
.tkf-nav__label {
    color:
        #ffffff;

    font-weight:
        700;
}


.tkf-nav__link:hover,
.tkf-nav__parent-button:hover,
.tkf-nav__submenu-toggle:hover {
    color:
        #78be20;
}


.tkf-nav__item.is-current
> .tkf-nav__link {
    color:
        #78be20;
}


.tkf-nav__chevron {
    color:
        #78be20;
}


/* ----------------------------------------------------------
   Traditional TKF dropdown treatment
   ---------------------------------------------------------- */

.tkf-nav__submenu {
    background:
        #f5f5f5;

    border:
        1px solid
        #e0e0e0;

    box-shadow:
        0 10px 26px
        rgba(0, 0, 0, .18);
}


.tkf-nav__submenu
.tkf-nav__link,
.tkf-nav__submenu
.tkf-nav__parent-button,
.tkf-nav__submenu
.tkf-nav__submenu-toggle,
.tkf-nav__submenu
.tkf-nav__label {
    color:
        #616161;
}


.tkf-nav__submenu
.tkf-nav__link:hover,
.tkf-nav__submenu
.tkf-nav__parent-button:hover,
.tkf-nav__submenu
.tkf-nav__submenu-toggle:hover {
    color:
        #212121;

    background:
        rgba(120, 190, 32, .14);
}


/* ----------------------------------------------------------
   Signature TKF action geometry
   ---------------------------------------------------------- */

.tkf-donate {
    min-height:
        48px;

    padding:
        11px 24px;

    border:
        2px solid
        #78be20;

    border-radius:
        25px 0 25px 0;

    background:
        #78be20;

    color:
        #ffffff;

    font-weight:
        800;

    letter-spacing:
        .01em;

    box-shadow:
        0 4px 10px
        rgba(0, 0, 0, .18);
}


.tkf-donate:hover {
    background:
        #78be20;

    color:
        #ffffff;

    filter:
        brightness(.94);

    transform:
        translateY(-1px);
}


.tkf-donate:focus-visible {
    outline-color:
        #ffffff;
}


/* ----------------------------------------------------------
   Mobile / tablet:
   same visual vocabulary, genuinely responsive chassis.
   ---------------------------------------------------------- */

@media (max-width: 1023px) {

    .tkf-site-chrome {
        --tkf-header-height:
            72px;
    }


    .tkf-utility__inner {
        width:
            min(
                calc(100% - 28px),
                var(--tkf-max-width)
            );

        min-height:
            29px;

        gap:
            16px;

        font-size:
            12px;
    }


    .tkf-site-header__inner {
        width:
            min(
                calc(100% - 28px),
                var(--tkf-max-width)
            );

        min-height:
            var(--tkf-header-height);

        grid-template-columns:
            minmax(0, 1fr)
            auto;

        gap:
            12px;
    }


    .tkf-site-header__brand {
        grid-column:
            1;

        grid-row:
            1;

        justify-self:
            start;
    }


    .tkf-site-header__logo {
        max-width:
            158px;

        max-height:
            54px;
    }


    .tkf-site-header__actions {
        grid-column:
            2;

        grid-row:
            1;

        gap:
            8px;
    }


    .tkf-donate {
        min-height:
            44px;

        padding:
            9px 17px;

        font-size:
            14px;
    }


    .tkf-menu-toggle {
        color:
            #ffffff;
    }


    .tkf-menu-toggle:hover {
        color:
            #78be20;
    }


    .tkf-nav-panel {
        background:
            #212121;

        color:
            #ffffff;
    }


    .tkf-nav-panel
    .tkf-nav__link,
    .tkf-nav-panel
    .tkf-nav__parent-button,
    .tkf-nav-panel
    .tkf-nav__submenu-toggle,
    .tkf-nav-panel
    .tkf-nav__label {
        color:
            #ffffff;
    }


    .tkf-nav-panel
    .tkf-nav__submenu {
        background:
            #2b2b2b;

        border-color:
            rgba(255, 255, 255, .12);

        box-shadow:
            none;
    }


    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__link,
    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__parent-button,
    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__submenu-toggle,
    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__label {
        color:
            #f5f5f5;
    }
}


/* ----------------------------------------------------------
   Small phones
   ---------------------------------------------------------- */

@media (max-width: 480px) {

    .tkf-utility__inner {
        width:
            calc(100% - 24px);

        min-height:
            28px;

        gap:
            10px;

        justify-content:
            space-between;

        font-size:
            11.5px;
    }


    .tkf-site-header__inner {
        width:
            calc(100% - 24px);

        gap:
            7px;
    }


    .tkf-site-header__logo {
        max-width:
            138px;

        max-height:
            49px;
    }


    .tkf-site-header__actions {
        gap:
            5px;
    }


    .tkf-donate {
        min-height:
            42px;

        padding:
            8px 13px;

        font-size:
            13px;
    }


    .tkf-menu-toggle {
        min-width:
            44px;

        min-height:
            44px;

        padding:
            6px;
    }
}


/* ----------------------------------------------------------
   Very narrow phones
   ---------------------------------------------------------- */

@media (max-width: 350px) {

    .tkf-site-header__logo {
        max-width:
            122px;
    }


    .tkf-donate {
        padding:
            8px 10px;

        font-size:
            12px;
    }


    .tkf-utility__inner {
        font-size:
            11px;
    }
}


/* ==========================================================
   TKF STABLE HEADER + MOBILE CONTRAST v0.2.3

   Desktop:
   - utility/newsletter tier stays in normal document flow
   - it scrolls away naturally
   - only primary navigation becomes fixed
   - fixed-header spacer prevents layout jump

   Mobile:
   - utility tier hidden
   - primary header remains sticky/fixed through same controller
   - drawer uses white surface + dark text + TKF green accent
   ========================================================== */


/* Root stays in ordinary document flow. */

.tkf-site-chrome {
    position: relative;
    top: auto;
    z-index: 9990;
    width: 100%;
}


/* Primary header is ordinary until JS promotes it. */

.tkf-site-header {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: 100%;
}


/* ==========================================================
   DESKTOP DONOR-FAMILIARITY TIER
   ========================================================== */

@media (min-width: 1024px) {

    .tkf-utility {
        display: block;

        background: #3b3b3b;
        color: #ffffff;

        border-bottom:
            1px solid
            rgba(255,255,255,.18);
    }


    .tkf-utility__inner {
        width:
            min(
                calc(100% - 48px),
                1240px
            );

        min-height: 64px;
        margin: 0 auto;

        display: flex;
        justify-content: center;
        align-items: center;

        gap: 22px;

        font-size: 16px;
    }


    .tkf-utility__inner::before {
        content:
            "Sign Up for Our Newsletter!";

        display: inline-block;

        color: #ffffff;

        font-size:
            clamp(
                19px,
                1.5vw,
                23px
            );

        font-weight: 800;
        line-height: 1.1;

        white-space: nowrap;
    }


    .tkf-utility__link:first-of-type {
        display: inline-flex;
        align-items: center;
        justify-content: center;

        min-height: 48px;

        padding:
            11px 26px;

        border:
            2px solid #78be20;

        border-radius:
            25px 0 25px 0;

        background:
            #78be20;

        color:
            #ffffff;

        font-size: 14px;
        font-weight: 800;

        line-height: 1;

        letter-spacing: .04em;

        text-decoration: none;
        text-transform: uppercase;

        box-shadow:
            0 4px 12px
            rgba(0,0,0,.23);
    }


    .tkf-utility__link:first-of-type:hover {
        color: #ffffff;
        text-decoration: none;

        filter: brightness(.94);

        transform:
            translateY(-1px);
    }


    .tkf-utility__link:last-of-type {
        display: inline-flex;
        align-items: center;
        justify-content: center;

        min-height: 46px;

        padding:
            8px 14px;

        color: #ffffff;

        font-size: 16px;
        font-weight: 700;

        line-height: 1;

        text-decoration: none;
    }


    .tkf-utility__link:last-of-type:hover {
        color: #78be20;

        text-decoration: underline;
        text-underline-offset: 4px;
    }
}


/* ==========================================================
   FIXED PRIMARY HEADER STATE
   ========================================================== */

/*
 * Reserve the exact primary-header height in document flow
 * before fixing the header to the viewport.
 */

.tkf-site-chrome.is-scrolled {
    padding-bottom:
        var(--tkf-fixed-header-height);
}


.tkf-site-chrome.is-scrolled
.tkf-site-header {
    position: fixed;

    top: 0;
    left: 0;
    right: 0;

    width: 100%;

    z-index: 9990;
}


body.admin-bar
.tkf-site-chrome.is-scrolled
.tkf-site-header {
    top: 32px;
}


/* ==========================================================
   MOBILE / TABLET
   ========================================================== */

@media (max-width: 1023px) {

    .tkf-utility {
        display: none;
    }


    /*
     * Explicit white drawer contract.
     */

    .tkf-nav-panel {
        background: #ffffff;
        color: #212121;
    }


    .tkf-nav-panel
    .tkf-nav__link,
    .tkf-nav-panel
    .tkf-nav__parent-button,
    .tkf-nav-panel
    .tkf-nav__submenu-toggle,
    .tkf-nav-panel
    .tkf-nav__label {
        color: #212121;
    }


    .tkf-nav-panel
    .tkf-nav__link:hover,
    .tkf-nav-panel
    .tkf-nav__parent-button:hover,
    .tkf-nav-panel
    .tkf-nav__submenu-toggle:hover {
        color: #212121;

        background:
            rgba(120,190,32,.12);
    }


    .tkf-nav-panel
    .tkf-nav__submenu {
        background: #f5f5f5;

        border-color:
            #e0e0e0;

        box-shadow: none;
    }


    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__link,
    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__parent-button,
    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__submenu-toggle,
    .tkf-nav-panel
    .tkf-nav__submenu
    .tkf-nav__label {
        color: #212121;
    }


    .tkf-nav-panel
    .tkf-nav__chevron {
        color: #78be20;
    }


    .tkf-nav-panel
    .tkf-nav__item.is-current
    > .tkf-nav__link {
        color: #212121;
        font-weight: 800;
    }


    .tkf-nav-panel a:focus-visible,
    .tkf-nav-panel button:focus-visible {
        outline:
            3px solid #212121;

        outline-offset:
            3px;
    }
}


/* WordPress mobile admin bar */

@media (max-width: 782px) {

    body.admin-bar
    .tkf-site-chrome.is-scrolled
    .tkf-site-header {
        top: 46px;
    }
}


/* Reduced motion */

@media (prefers-reduced-motion: reduce) {

    .tkf-utility__link {
        transition: none !important;
    }
}
