/* Approved 2026-11-02: refined header typography, local English frontend only.
 * Retain the existing body class and environment/domain/language gates.
 * Direct children keep product cards and submenu content outside this change.
 */
body.gato-local-nav-weight-b #gato_header .wpr-nav-menu > li > .wpr-menu-item {
    font-weight: 400 !important;
    color: #30363d;
}

body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li > .wpr-mobile-menu-item {
    font-weight: 500 !important;
    color: #30363d;
}

body.gato-local-nav-weight-b #gato_header .gato-local-site-language-switcher__toggle {
    font-weight: 400 !important;
    color: #30363d;
}

body.gato-local-nav-weight-b #gato_header .elementor-button {
    font-weight: 500 !important;
}

/* Color supplies emphasis without changing label widths on hover or selection. */
body.gato-local-nav-weight-b #gato_header .wpr-nav-menu > li > .wpr-menu-item:is(:hover, :focus-visible, .wpr-active-menu-item),
body.gato-local-nav-weight-b #gato_header .wpr-nav-menu > li:is(.current-menu-item, .current-page-ancestor, .gpn-open) > .wpr-menu-item,
body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li > .wpr-mobile-menu-item:is(:hover, :focus-visible, .wpr-active-menu-item),
body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li:is(.current-menu-item, .current-page-ancestor, .gpn-open, .wpr-mobile-sub-open) > .wpr-mobile-menu-item,
body.gato-local-nav-weight-b #gato_header .gato-local-site-language-switcher__toggle:is(:hover, :focus-visible),
body.gato-local-nav-weight-b #gato_header .gato-local-site-language-switcher.is-open > .gato-local-site-language-switcher__toggle {
    color: #0073aa;
}

body.gato-local-nav-weight-b #gato_header .gato-local-site-language-switcher__toggle:is(:hover, :focus) {
    background: transparent;
    box-shadow: none;
}

/* Reuse the loaded icon font; preserve the controllers' caret hit areas. */
body.gato-local-nav-weight-b #gato_header .wpr-nav-menu > li > .wpr-menu-item > :is(.gpn-caret, .wpr-sub-icon) {
    font-size: 10px;
    color: inherit;
}

body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li > .wpr-mobile-menu-item > :is(.gpn-caret, .wpr-mobile-sub-icon) {
    font-size: 12px;
    color: inherit;
}

body.gato-local-nav-weight-b #gato_header .wpr-nav-menu > li > .wpr-menu-item > :is(.gpn-caret, .wpr-sub-icon)::before,
body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li > .wpr-mobile-menu-item > :is(.gpn-caret, .wpr-mobile-sub-icon)::before {
    content: "\f078";
}

@media (max-width: 1024px) {
    /* Keep blue text legible when Royal highlights the active mobile row. */
    body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li > .wpr-mobile-menu-item:is(:hover, :focus-visible, .wpr-active-menu-item),
    body.gato-local-nav-weight-b #gato_header .wpr-mobile-nav-menu > li:is(.gpn-open, .wpr-mobile-sub-open) > .wpr-mobile-menu-item {
        background-color: #e7f5fe;
    }

    /* The imported white hamburger disappears against the light header. */
    body.gato-local-nav-weight-b #gato_header .wpr-mobile-toggle .wpr-mobile-toggle-line {
        background-color: #30363d;
    }

    body.gato-local-nav-weight-b #gato_header .wpr-mobile-toggle:focus-visible {
        outline: 2px solid #0073aa;
        outline-offset: 2px;
    }
}

/* Keep the logo and both actions on one row on 320px phones. */
@media (max-width: 359px) {
    body.gato-local-nav-weight-b #gato_header {
        flex-wrap: nowrap;
        column-gap: 8px;
        min-height: 60px;
    }

    body.gato-local-nav-weight-b #gato_header > .elementor-element-c2a6e84 {
        flex-wrap: nowrap;
        column-gap: 6px;
    }

    body.gato-local-nav-weight-b #gato_header .gato-local-logo {
        width: 88px;
    }

    body.gato-local-nav-weight-b #gato_header > .elementor-element-5c32fe4 {
        flex-wrap: nowrap;
        column-gap: 6px;
    }

    body.gato-local-nav-weight-b #gato_header .elementor-button {
        padding-inline: 12px;
        white-space: nowrap;
    }
}

/* Keep the accepted narrow-desktop spacing and the existing mobile breakpoint.
 * Retain the logo, responsive font sizes, bar height and controls.
 * The independently maintained centered header owns its own responsive layout.
 */
@media (min-width: 1025px) and (max-width: 1279px) {
    body.gato-local-nav-weight-b #gato-local-header:not(.gch-centered) #gato_header {
        padding-inline: 16px !important;
        column-gap: 8px !important;
    }

    body.gato-local-nav-weight-b #gato-local-header:not(.gch-centered) #gato_header .elementor-element-c2a6e84 {
        column-gap: 16px !important;
    }

    body.gato-local-nav-weight-b #gato-local-header:not(.gch-centered) #gato_header .wpr-nav-menu > li {
        margin-inline: clamp(4px, calc(4vw - 37px), 14px) !important;
    }

    body.gato-local-nav-weight-b #gato-local-header:not(.gch-centered) #gato_header .wpr-nav-menu > li:first-child {
        margin-left: 0 !important;
    }

    body.gato-local-nav-weight-b #gato-local-header:not(.gch-centered) #gato_header .wpr-nav-menu > li:last-child {
        margin-right: 0 !important;
    }
}
