:root {
    --apxmf-forest: #041d16;
    --apxmf-forest-soft: #0a2d21;
    --apxmf-honey: #efad18;
    --apxmf-paper: #f4f0e6;
    --apxmf-line: rgba(255, 255, 255, .13);
}

/*
 * HOME
 * Preserve the existing anchor menu but force
 * the complete header shell back to dark green.
 */
body.apxmf-home
.apxmf-home-header-shell {
    position: sticky !important;
    top: 0 !important;
    z-index: 9997 !important;
    width: 100% !important;
    background:
        linear-gradient(
            110deg,
            rgba(4, 29, 22, .985),
            rgba(16, 53, 35, .975)
        ) !important;
    border-bottom:
        1px solid
        rgba(255, 255, 255, .11) !important;
    box-shadow:
        0 10px 32px
        rgba(0, 0, 0, .14) !important;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

body.admin-bar.apxmf-home
.apxmf-home-header-shell {
    top: 32px !important;
}

body.apxmf-home
.apxmf-home-header-shell
.ap-header,
body.apxmf-home
.apxmf-home-header-shell
.ap-header-inner,
body.apxmf-home
.apxmf-home-header-shell
.elementor-container,
body.apxmf-home
.apxmf-home-header-shell
.elementor-column-wrap,
body.apxmf-home
.apxmf-home-header-shell
.elementor-widget-wrap {
    background:
        transparent !important;
    background-color:
        transparent !important;
}

body.apxmf-home
.apxmf-home-header-shell
.ap-header {
    position: relative !important;
    top: auto !important;
}

body.apxmf-home
.apxmf-home-header-shell
a:not(.ap-btn):not(.elementor-button) {
    color: #fff !important;
}

.apxmf-replaced-logo {
    display: inline-flex !important;
    align-items: center;
    width: 192px;
    max-width: 100%;
    text-decoration: none !important;
}

.apxmf-replaced-logo img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 55px;
    object-fit: contain;
    object-position: left center;
}

/*
 * INNER PAGES
 */
body.apxmf-inner
.ap-header,
body.apxmf-inner
.elementor-location-header,
body.apxmf-inner
.site-header {
    display: none !important;
}

.apxmf-inner-shell {
    position: sticky;
    top: 0;
    z-index: 9998;
    width: 100%;
    color: #fff;
}

body.admin-bar
.apxmf-inner-shell {
    top: 32px;
}

.apxmf-inner-bar {
    background:
        linear-gradient(
            110deg,
            rgba(4, 29, 22, .985),
            rgba(16, 53, 35, .975)
        );
    border-bottom:
        1px solid
        var(--apxmf-line);
    box-shadow:
        0 10px 32px
        rgba(0, 0, 0, .15);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

.apxmf-inner-bar-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    width:
        min(
            1440px,
            calc(100% - 64px)
        );
    min-height: 94px;
    margin: 0 auto;
}

.apxmf-logo {
    display: inline-flex;
    width: 195px;
    max-width: 100%;
}

.apxmf-logo img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 56px;
    object-fit: contain;
    object-position: left center;
}

.apxmf-inner-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

.apxmf-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 50px;
    padding: 0 21px;
    border:
        1px solid
        rgba(255, 255, 255, .22);
    border-radius: 999px;
    background:
        rgba(255, 255, 255, .055);
    color: #fff;
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.apxmf-toggle-grid {
    display: grid;
    grid-template-columns:
        repeat(2, 4px);
    gap: 3px;
}

.apxmf-toggle-grid i {
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--apxmf-honey);
}

.apxmf-adopt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 25px;
    border-radius: 999px;
    background: var(--apxmf-honey);
    color: #061b14 !important;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none !important;
}

.apxmf-mega {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    display: none;
    max-height:
        calc(
            100vh -
            130px
        );
    overflow-y: auto;
    border-bottom:
        1px solid
        var(--apxmf-line);
    background:
        radial-gradient(
            circle at 90% 0,
            rgba(239, 173, 24, .12),
            transparent 27%
        ),
        rgba(4, 29, 22, .99);
    box-shadow:
        0 32px 80px
        rgba(0, 0, 0, .38);
}

.apxmf-mega.is-open {
    display: block;
}

.apxmf-mega-content {
    width:
        min(
            1440px,
            calc(100% - 64px)
        );
    margin: 0 auto;
    padding: 37px 0 42px;
}

.apxmf-mega-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 30px;
    padding-bottom: 27px;
    border-bottom:
        1px solid
        var(--apxmf-line);
}

.apxmf-mega-heading p {
    margin: 0 0 8px;
    color: var(--apxmf-honey);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.apxmf-mega-heading h2 {
    margin: 0;
    color: #fff;
    font:
        400
        clamp(34px, 4vw, 54px) /
        1
        Georgia,
        serif;
    letter-spacing: -.05em;
}

.apxmf-close {
    width: 49px;
    height: 49px;
    border:
        1px solid
        rgba(255, 255, 255, .18);
    border-radius: 50%;
    background:
        rgba(255, 255, 255, .04);
    color: #fff;
    font-size: 29px;
    line-height: 1;
    cursor: pointer;
}

.apxmf-mega-grid {
    display: grid;
    grid-template-columns:
        repeat(
            4,
            minmax(140px, .8fr)
        )
        minmax(290px, 1.35fr);
    gap: 34px;
    padding-top: 34px;
}

.apxmf-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.apxmf-column h3 {
    margin: 0 0 16px;
    color:
        rgba(255, 255, 255, .4);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.apxmf-column a {
    width: 100%;
    padding: 12px 0;
    border-bottom:
        1px solid
        rgba(255, 255, 255, .075);
    color:
        rgba(255, 255, 255, .86);
    font-size: 15px;
    text-decoration: none;
}

.apxmf-column a:hover,
.apxmf-column a:focus-visible,
.apxmf-column a[aria-current="page"] {
    color: var(--apxmf-honey);
}

.apxmf-priority {
    padding: 27px;
    border:
        1px solid
        rgba(239, 173, 24, .28);
    border-radius: 24px;
    background:
        rgba(255, 255, 255, .045);
}

.apxmf-priority-label {
    margin: 0 0 12px;
    color: var(--apxmf-honey);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.apxmf-priority h3 {
    margin: 0;
    color: #fff;
    font:
        400
        clamp(25px, 2.5vw, 36px) /
        1.06
        Georgia,
        serif;
    letter-spacing: -.04em;
}

.apxmf-priority > p:not(
    .apxmf-priority-label
) {
    margin: 16px 0 22px;
    color:
        rgba(255, 255, 255, .58);
    font-size: 13px;
    line-height: 1.65;
}

.apxmf-priority > a {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 13px 0;
    border-top:
        1px solid
        rgba(255, 255, 255, .1);
    color: #fff;
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
}

.apxmf-priority > a span {
    color: var(--apxmf-honey);
}

/*
 * FOOTER
 */
.apxmf-footer-brand-link {
    display: inline-flex !important;
    align-items: center;
    width: 215px;
    max-width: 100%;
    text-decoration: none !important;
}

.apxmf-footer-brand-link img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 62px;
    object-fit: contain;
    object-position: left center;
}

.apxmf-footer-credit {
    display: none;
}

.apxmf-footer-credit.is-mounted {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    width: 100%;
    margin-top: 26px;
    padding-top: 22px;
    border-top:
        1px solid
        rgba(255, 255, 255, .11);
}

.apxmf-footer-logo {
    display: inline-flex;
    width: 185px;
}

.apxmf-footer-logo img {
    display: block;
    width: 100%;
    height: auto;
}

.apxmf-footer-credit p {
    margin: 0;
    color:
        rgba(255, 255, 255, .42);
    font-size: 11px;
    letter-spacing: .04em;
}

.apxmf-footer-credit p a {
    color:
        rgba(255, 255, 255, .75);
    font-weight: 750;
    text-decoration: none;
}

.apxmf-footer-credit p a:hover {
    color: var(--apxmf-honey);
}

html.apxmf-mega-open,
html.apxmf-mega-open body {
    overflow: hidden !important;
}

@media (max-width: 1180px) {
    .apxmf-mega-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .apxmf-priority {
        grid-column: 1 / -1;
    }
}

@media (max-width: 782px) {
    body.admin-bar.apxmf-home
    .apxmf-home-header-shell,
    body.admin-bar
    .apxmf-inner-shell {
        top: 46px !important;
    }

    .apxmf-inner-bar-content,
    .apxmf-mega-content {
        width:
            calc(
                100% - 28px
            );
    }

    .apxmf-logo {
        width: 155px;
    }

    .apxmf-adopt {
        display: none;
    }
}

@media (max-width: 620px) {
    .apxmf-inner-bar-content {
        min-height: 76px;
    }

    .apxmf-toggle {
        min-height: 43px;
        padding: 0 14px;
        font-size: 12px;
    }

    .apxmf-mega-grid {
        grid-template-columns: 1fr;
    }

    .apxmf-priority {
        grid-column: auto;
    }

    .apxmf-footer-credit.is-mounted {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* APXMF_V4_FINAL_START */

/*
 * The header is moved directly below the WordPress
 * admin bar or to the beginning of body.
 * This removes the empty beige Elementor wrapper.
 */
.apxmf-source-empty,
.apxmf-source-empty.elementor,
.apxmf-source-empty.elementor-section,
.apxmf-source-empty.e-con {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

body.apxmf-home
.apxmf-home-header-shell {
    position: sticky !important;
    top: 0 !important;
    z-index: 999999 !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background:
        linear-gradient(
            110deg,
            #041d16,
            #0d3524
        ) !important;
    border: 0 !important;
    border-bottom:
        1px solid
        rgba(255, 255, 255, .12) !important;
    box-shadow:
        0 12px 34px
        rgba(0, 0, 0, .16) !important;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

body.admin-bar.apxmf-home
.apxmf-home-header-shell {
    top: 32px !important;
}

body.apxmf-home
.apxmf-home-header-shell::before,
body.apxmf-home
.apxmf-home-header-shell::after {
    display: none !important;
}

body.apxmf-home
.apxmf-home-header-shell
.ap-header {
    position: relative !important;
    top: auto !important;
    width: 100% !important;
    margin: 0 !important;
    background: transparent !important;
}

body.apxmf-home
.apxmf-home-header-shell
.elementor-section,
body.apxmf-home
.apxmf-home-header-shell
.elementor-container,
body.apxmf-home
.apxmf-home-header-shell
.elementor-column,
body.apxmf-home
.apxmf-home-header-shell
.elementor-column-wrap,
body.apxmf-home
.apxmf-home-header-shell
.elementor-widget-wrap,
body.apxmf-home
.apxmf-home-header-shell
.e-con {
    background-color: transparent !important;
    background-image: none !important;
}

/*
 * Home mega menu trigger.
 * The original anchor navigation remains visible.
 */
.apxmf-home-mega-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    margin-left: 10px;
    padding: 0 17px;
    border:
        1px solid
        rgba(255, 255, 255, .2);
    border-radius: 999px;
    background:
        rgba(255, 255, 255, .05);
    color: #fff;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.apxmf-home-mega-toggle:hover,
.apxmf-home-mega-toggle:focus-visible {
    border-color:
        rgba(239, 173, 24, .65);
    background:
        rgba(239, 173, 24, .11);
}

.apxmf-home-mega-icon {
    display: grid;
    grid-template-columns:
        repeat(2, 4px);
    gap: 3px;
}

.apxmf-home-mega-icon i {
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #efad18;
}

.apxmf-home-mega-root {
    position: fixed;
    top: var(
        --apxmf-home-mega-top,
        120px
    );
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 999998;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition:
        visibility .22s ease,
        opacity .22s ease;
}

.apxmf-home-mega-root.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.apxmf-home-mega-backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background:
        rgba(1, 13, 9, .72);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.apxmf-home-mega-dialog {
    position: relative;
    width:
        min(
            1440px,
            calc(100% - 56px)
        );
    max-height:
        calc(
            100vh -
            var(
                --apxmf-home-mega-top,
                120px
            ) -
            24px
        );
    margin: 16px auto 0;
    padding: 36px;
    overflow-y: auto;
    border:
        1px solid
        rgba(255, 255, 255, .13);
    border-radius: 30px;
    background:
        radial-gradient(
            circle at 90% 0,
            rgba(239, 173, 24, .12),
            transparent 27%
        ),
        #041d16;
    color: #fff;
    box-shadow:
        0 38px 100px
        rgba(0, 0, 0, .38);
}

.apxmf-home-mega-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 30px;
    padding-bottom: 27px;
    border-bottom:
        1px solid
        rgba(255, 255, 255, .13);
}

.apxmf-home-mega-heading p {
    margin: 0 0 8px;
    color: #efad18;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.apxmf-home-mega-heading h2 {
    margin: 0;
    color: #fff;
    font:
        400
        clamp(34px, 4vw, 54px) /
        1
        Georgia,
        serif;
    letter-spacing: -.05em;
}

.apxmf-home-mega-close {
    width: 49px;
    height: 49px;
    border:
        1px solid
        rgba(255, 255, 255, .18);
    border-radius: 50%;
    background:
        rgba(255, 255, 255, .04);
    color: #fff;
    font-size: 29px;
    cursor: pointer;
}

.apxmf-home-mega-grid {
    display: grid;
    grid-template-columns:
        repeat(
            4,
            minmax(140px, .8fr)
        )
        minmax(290px, 1.35fr);
    gap: 34px;
    padding-top: 34px;
}

.apxmf-home-mega-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.apxmf-home-mega-column h3 {
    margin: 0 0 16px;
    color:
        rgba(255, 255, 255, .4);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.apxmf-home-mega-column a {
    width: 100%;
    padding: 12px 0;
    border-bottom:
        1px solid
        rgba(255, 255, 255, .075);
    color:
        rgba(255, 255, 255, .86);
    font-size: 15px;
    text-decoration: none;
}

.apxmf-home-mega-column a:hover,
.apxmf-home-mega-column a:focus-visible {
    color: #efad18;
}

.apxmf-home-mega-priority {
    padding: 27px;
    border:
        1px solid
        rgba(239, 173, 24, .28);
    border-radius: 24px;
    background:
        rgba(255, 255, 255, .045);
}

.apxmf-home-mega-priority > p:first-child {
    margin: 0 0 12px;
    color: #efad18;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.apxmf-home-mega-priority h3 {
    margin: 0;
    color: #fff;
    font:
        400
        clamp(25px, 2.5vw, 36px) /
        1.06
        Georgia,
        serif;
    letter-spacing: -.04em;
}

.apxmf-home-mega-priority > p:not(:first-child) {
    margin: 16px 0 22px;
    color:
        rgba(255, 255, 255, .58);
    font-size: 13px;
    line-height: 1.65;
}

.apxmf-home-mega-priority > a {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 13px 0;
    border-top:
        1px solid
        rgba(255, 255, 255, .1);
    color: #fff;
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
}

.apxmf-home-mega-priority > a span {
    color: #efad18;
}

/*
 * Make the inner header sticky independently
 * from Elementor wrappers.
 */
.apxmf-inner-shell {
    position: sticky !important;
    top: 0 !important;
    z-index: 999999 !important;
    margin: 0 !important;
    transform: none !important;
}

body.admin-bar
.apxmf-inner-shell {
    top: 32px !important;
}

/*
 * Remove the duplicate logo from the final credit.
 * Keep only one centered Mars 1982 line.
 */
.apxmf-footer-credit.is-mounted {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 76px;
    margin: 0 !important;
    padding: 24px !important;
    border-top:
        1px solid
        rgba(255, 255, 255, .11);
    text-align: center !important;
}

.apxmf-footer-credit
.apxmf-footer-logo {
    display: none !important;
}

.apxmf-footer-credit p {
    width: 100%;
    margin: 0 !important;
    text-align: center !important;
    color:
        rgba(255, 255, 255, .5);
    font-size: 12px;
    letter-spacing: .04em;
}

.apxmf-footer-credit p a {
    margin-left: 4px;
    color:
        rgba(255, 255, 255, .82);
    font-weight: 800;
    text-decoration: none;
}

html.apxmf-home-mega-open,
html.apxmf-home-mega-open body {
    overflow: hidden !important;
}

@media (max-width: 1180px) {
    .apxmf-home-mega-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .apxmf-home-mega-priority {
        grid-column: 1 / -1;
    }
}

@media (max-width: 782px) {
    body.admin-bar.apxmf-home
    .apxmf-home-header-shell,
    body.admin-bar
    .apxmf-inner-shell {
        top: 46px !important;
    }

    .apxmf-home-mega-dialog {
        width:
            calc(100% - 28px);
        margin-top: 12px;
        padding: 25px;
        border-radius: 22px;
    }
}

@media (max-width: 700px) {
    .apxmf-home-mega-toggle {
        min-height: 42px;
        padding: 0 13px;
        font-size: 0;
    }

    .apxmf-home-mega-icon {
        transform: scale(1.2);
    }

    .apxmf-home-mega-grid {
        grid-template-columns: 1fr;
    }

    .apxmf-home-mega-priority {
        grid-column: auto;
    }
}

/* APXMF_V4_FINAL_END */

/* APXMF_V5_ACTIONS_START */

/*
 * Keep All pages and Adopt a hive inside
 * one grid item and on one horizontal line.
 */
.apxmf-home-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    margin-left: auto !important;
    flex: 0 0 auto !important;
    flex-flow: row nowrap !important;
    white-space: nowrap !important;
}

.apxmf-home-actions
.apxmf-home-mega-toggle {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 145px !important;
    margin: 0 !important;
}

.apxmf-home-actions
a[href*="/adopt"],
.apxmf-home-actions
.ap-btn,
.apxmf-home-actions
.elementor-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 160px !important;
    max-width: none !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

/*
 * Prevent the complete desktop header from
 * creating a second row.
 */
body.apxmf-home
.apxmf-home-header-shell
.ap-header-inner,
body.apxmf-home
.apxmf-home-header-shell
.ap-header__inner,
body.apxmf-home
.apxmf-home-header-shell
.ap-container,
body.apxmf-home
.apxmf-home-header-shell
.elementor-container {
    align-items: center !important;
    flex-wrap: nowrap !important;
}

/*
 * Perfectly centre the close symbol.
 * The original text is hidden and replaced
 * with a correctly centred pseudo-element.
 */
.apxmf-home-mega-close,
.apxmf-close {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-indent: 0 !important;
}

.apxmf-home-mega-close::before,
.apxmf-close::before {
    content: "\00d7";
    display: block;
    width: 100%;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 31px;
    font-weight: 300;
    line-height: 1;
    text-align: center;
    transform: translateY(-1px);
}

@media (max-width: 1050px) {
    .apxmf-home-actions {
        gap: 8px !important;
    }

    .apxmf-home-actions
    .apxmf-home-mega-toggle {
        min-width: 48px !important;
        padding-right: 14px !important;
        padding-left: 14px !important;
    }

    .apxmf-home-actions
    a[href*="/adopt"],
    .apxmf-home-actions
    .ap-btn,
    .apxmf-home-actions
    .elementor-button {
        min-width: 135px !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
    }
}

@media (max-width: 760px) {
    .apxmf-home-actions
    .apxmf-home-mega-toggle {
        min-width: 43px !important;
    }

    .apxmf-home-actions
    a[href*="/adopt"],
    .apxmf-home-actions
    .ap-btn,
    .apxmf-home-actions
    .elementor-button {
        display: none !important;
    }
}

/* APXMF_V5_ACTIONS_END */

/* APXMF_V6_MOBILE_START */

@media (max-width: 760px) {

    /*
     * Logo left and both menu controls right,
     * all on one single horizontal row.
     */
    body.apxmf-home
    .apxmf-home-header-shell
    .ap-header,
    body.apxmf-home
    .apxmf-home-header-shell
    .ap-header-inner,
    body.apxmf-home
    .apxmf-home-header-shell
    .ap-header__inner,
    body.apxmf-home
    .apxmf-home-header-shell
    .ap-container,
    body.apxmf-home
    .apxmf-home-header-shell
    .elementor-container {
        align-items: center !important;
        flex-flow: row nowrap !important;
        grid-auto-flow: column !important;
    }

    .apxmf-mobile-actions {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 9px !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: max-content !important;
        max-width: none !important;
        margin: 0 0 0 auto !important;
        padding: 0 !important;
        white-space: nowrap !important;
    }

    /*
     * Same dimensions for hamburger and All pages.
     */
    .apxmf-mobile-actions
    .ap-menu-toggle,
    .apxmf-mobile-actions
    .menu-toggle,
    .apxmf-mobile-actions
    .apxmf-home-mega-toggle {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 54px !important;
        width: 54px !important;
        min-width: 54px !important;
        max-width: 54px !important;
        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 50% !important;
        transform: none !important;
    }

    /*
     * On mobile All pages displays only its four dots.
     */
    .apxmf-mobile-actions
    .apxmf-home-mega-toggle {
        font-size: 0 !important;
    }

    .apxmf-mobile-actions
    .apxmf-home-mega-toggle
    > span:last-child {
        display: none !important;
    }

    .apxmf-mobile-actions
    .apxmf-home-mega-icon {
        display: grid !important;
        grid-template-columns: repeat(2, 5px) !important;
        gap: 4px !important;
        margin: 0 !important;
        transform: none !important;
    }

    .apxmf-mobile-actions
    .apxmf-home-mega-icon i {
        width: 5px !important;
        height: 5px !important;
    }

    /*
     * Old desktop action wrapper is empty on mobile
     * after the All pages button has been moved.
     */
    body.apxmf-mobile-actions-ready
    .apxmf-home-actions {
        display: none !important;
    }

    /*
     * The orange Adopt button stays hidden on mobile,
     * avoiding a second header row.
     */
    body.apxmf-home
    .apxmf-home-header-shell
    a[href*="/adopt"],
    body.apxmf-home
    .apxmf-home-header-shell
    .ap-btn,
    body.apxmf-home
    .apxmf-home-header-shell
    .elementor-button {
        display: none !important;
    }

    /*
     * Keep the official logo compact enough to leave
     * room for the two controls.
     */
    body.apxmf-home
    .apxmf-replaced-logo {
        flex: 0 1 auto !important;
        width: min(52vw, 255px) !important;
        max-width: calc(100% - 128px) !important;
        margin: 0 !important;
    }

    body.apxmf-home
    .apxmf-replaced-logo img {
        width: 100% !important;
        max-height: 62px !important;
    }
}

@media (max-width: 390px) {
    .apxmf-mobile-actions {
        gap: 7px !important;
    }

    .apxmf-mobile-actions
    .ap-menu-toggle,
    .apxmf-mobile-actions
    .menu-toggle,
    .apxmf-mobile-actions
    .apxmf-home-mega-toggle {
        flex-basis: 49px !important;
        width: 49px !important;
        min-width: 49px !important;
        max-width: 49px !important;
        height: 49px !important;
        min-height: 49px !important;
        max-height: 49px !important;
    }

    body.apxmf-home
    .apxmf-replaced-logo {
        width: min(49vw, 220px) !important;
        max-width: calc(100% - 112px) !important;
    }
}

/* APXMF_V6_MOBILE_END */

/* APXMF_V7_HAMBURGER_START */

@media (max-width: 760px) {

    /*
     * Replace the broken original icon with a
     * centred three-line hamburger.
     */
    .apxmf-mobile-actions
    .ap-menu-toggle,
    .apxmf-mobile-actions
    .menu-toggle {
        position: relative !important;
        overflow: hidden !important;
        color: transparent !important;
        font-size: 0 !important;
        line-height: 0 !important;
    }

    .apxmf-mobile-actions
    .ap-menu-toggle > span:not(.screen-reader-text),
    .apxmf-mobile-actions
    .ap-menu-toggle > i,
    .apxmf-mobile-actions
    .menu-toggle > span:not(.screen-reader-text),
    .apxmf-mobile-actions
    .menu-toggle > i {
        display: none !important;
    }

    .apxmf-mobile-actions
    .ap-menu-toggle::before,
    .apxmf-mobile-actions
    .menu-toggle::before {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        display: block !important;
        width: 25px !important;
        height: 2px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 3px !important;
        background: #ffffff !important;
        box-shadow:
            0 -8px 0 #ffffff,
            0 8px 0 #ffffff !important;
        transform:
            translate(-50%, -50%) !important;
        opacity: 1 !important;
    }

    .apxmf-mobile-actions
    .ap-menu-toggle::after,
    .apxmf-mobile-actions
    .menu-toggle::after {
        content: none !important;
        display: none !important;
    }
}

/* APXMF_V7_HAMBURGER_END */
