/* Header styles are scoped to .coop-header; desktop and mobile layouts are isolated. */
@media (min-width: 992px) {
    .coop-header {
        --coop-header-green: #356443;
        --coop-header-green-dark: #0d4828;
        --coop-header-green-highlight: #37945a;
        --coop-header-gold: #e6b800;
        --coop-header-cooperado-text: #806632;
        --coop-header-top-height: 50px;
        --coop-header-main-height: 160px;
        --coop-header-gutter: 24px;
        --coop-header-link-padding: 10px;
        --coop-header-font-size: 16px;
        position: relative;
        z-index: 1030;
        width: 100%;
        padding-top: var(--coop-header-top-height);
        font-family: 'Poppins', sans-serif;
        font-size: var(--coop-header-font-size);
        line-height: 1.4;
        color: var(--coop-header-gold);
    }

    .coop-header *,
    .coop-header *::before,
    .coop-header *::after {
        box-sizing: border-box;
    }

    .coop-header .coop-header__top {
        position: fixed;
        top: var(--wp-admin--admin-bar--height, 0px);
        left: 0;
        width: 100%;
        z-index: 1030;
        background: var(--coop-header-green);
    }

    .coop-header .coop-header__top-inner,
    .coop-header .coop-header__main-inner {
        width: 100%;
        max-width: 1920px;
        margin-inline: auto;
        padding-inline: var(--coop-header-gutter);
    }

    .coop-header .coop-header__top-inner {
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        gap: 16px;
        min-height: var(--coop-header-top-height);
    }

    .coop-header .coop-header__nav,
    .coop-header .coop-header__secondary {
        flex: 0 0 auto;
    }

    .coop-header .coop-header__secondary {
        margin-left: auto;
    }

    .coop-header .coop-header__nav-list,
    .coop-header .coop-header__secondary-list,
    .coop-header .coop-header__submenu {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .coop-header .coop-header__nav-list,
    .coop-header .coop-header__secondary-list,
    .coop-header .coop-header__nav-heading {
        display: flex;
        align-items: stretch;
    }

    .coop-header .coop-header__nav-item {
        position: relative;
    }

    .coop-header .coop-header__nav-link,
    .coop-header .coop-header__nav-trigger,
    .coop-header .coop-header__secondary-link,
    .coop-header .coop-header__submenu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: var(--coop-header-top-height);
        margin: 0;
        padding: 0 var(--coop-header-link-padding);
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        color: var(--coop-header-gold);
        font: inherit;
        font-weight: 500;
        letter-spacing: normal;
        text-decoration: none;
        white-space: nowrap;
        cursor: pointer;
    }

    .coop-header .coop-header__nav-item--has-submenu .coop-header__nav-link {
        padding-right: 2px;
    }

    .coop-header .coop-header__submenu-toggle {
        gap: 6px;
        padding-left: 4px;
    }

    .coop-header .coop-header__nav-trigger {
        padding-left: var(--coop-header-link-padding);
    }

    .coop-header .coop-header__submenu-icon {
        font-size: 0.8em;
        line-height: 1;
    }

    .coop-header .coop-header__nav-item:hover > .coop-header__nav-heading,
    .coop-header .coop-header__nav-item:focus-within > .coop-header__nav-heading,
    .coop-header .coop-header__secondary-link:hover {
        background: rgb(255 255 255 / 7%);
    }

    .coop-header .coop-header__nav-item--contact .coop-header__nav-link {
        padding-inline: calc(var(--coop-header-link-padding) + 10px);
        background: var(--coop-header-green-highlight);
        color: #fff;
        font-weight: 700;
    }

    .coop-header .coop-header__secondary-link {
        font-weight: 700;
    }

    .coop-header .coop-header__secondary-link--cooperado {
        padding-inline: calc(var(--coop-header-link-padding) + 16px);
    }

    .coop-header .coop-header__secondary-link--cooperado,
    .coop-header .coop-header__secondary-link--cooperado:hover {
        background: #fff;
        color: var(--coop-header-cooperado-text);
    }

    .coop-header .coop-header__submenu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1;
        width: 282px;
        background: var(--coop-header-green-dark);
        box-shadow: 0 12px 20px rgb(0 0 0 / 16%);
    }

    .coop-header .coop-header__submenu:not([hidden]) {
        display: block;
    }

    .coop-header .coop-header__submenu-item + .coop-header__submenu-item {
        border-top: 1px solid rgb(255 255 255 / 10%);
    }

    .coop-header .coop-header__submenu-link {
        display: flex;
        align-items: center;
        min-height: 55px;
        padding: 14px 18px;
        color: var(--coop-header-gold);
        font-size: 15px;
        font-weight: 500;
        line-height: 1.5;
        text-decoration: none;
        overflow-wrap: break-word;
    }

    .coop-header .coop-header__submenu-link:hover,
    .coop-header .coop-header__submenu-link:focus-visible {
        background: var(--coop-header-green-highlight);
        color: var(--coop-header-gold);
    }

    .coop-header .coop-header__main {
        background: #13331F;
    }

    .coop-header .coop-header__main-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: center;
        min-height: var(--coop-header-main-height);
        gap: 24px;
    }

    .coop-header .coop-header__logo {
        display: block;
        justify-self: start;
        width: 280px;
        max-width: 100%;
    }

    .coop-header .coop-header__logo-image {
        display: block;
        width: 100%;
        height: auto;
    }

    .coop-header .coop-header__anniversary {
        justify-self: center;
    }

    .coop-header .coop-header__anniversary-image {
        display: block;
        width: auto;
        height: 140px;
        max-width: 100%;
        object-fit: contain;
    }

    .coop-header .coop-header__search {
        position: relative;
        justify-self: end;
    }

    .coop-header .coop-header__search-toggle {
        display: inline-flex;
        align-items: center;
        gap: 18px;
        min-height: 44px;
        margin: 0;
        padding: 8px 0 8px 8px;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: var(--coop-header-gold);
        font: inherit;
        font-weight: 700;
        cursor: pointer;
    }

    .coop-header .coop-header__search-toggle::before {
        content: '';
        width: 23px;
        height: 23px;
        margin-right: 5px;
        border: 3px solid currentColor;
        border-radius: 50%;
    }

    .coop-header .coop-header__search-toggle::after {
        content: '';
        position: absolute;
        left: 28px;
        top: calc(50% + 8px);
        width: 13px;
        height: 3px;
        background: currentColor;
        transform: rotate(45deg);
        transform-origin: left center;
    }

    .coop-header .coop-header__search-form {
        position: absolute;
        top: calc(100% + 12px);
        right: 0;
        width: min(420px, calc(100vw - 48px));
        padding: 20px;
        background: var(--coop-header-green-dark);
        color: #fff;
        box-shadow: 0 8px 20px rgb(0 0 0 / 16%);
    }

    .coop-header .coop-header__search-label {
        display: block;
        margin-bottom: 8px;
        font-size: 14px;
    }

    .coop-header .coop-header__search-input {
        width: 100%;
        min-height: 44px;
        padding: 10px 12px;
        border: 1px solid var(--coop-header-gold);
        border-radius: 0;
        background: #fff;
        color: #13331f;
        font: inherit;
    }

    .coop-header .coop-header__search-submit {
        min-height: 44px;
        margin-top: 12px;
        padding: 10px 20px;
        border: 0;
        border-radius: 0;
        background: var(--coop-header-green-highlight);
        color: #fff;
        font: inherit;
        font-weight: 700;
        cursor: pointer;
    }

    .coop-header a:focus-visible,
    .coop-header button:focus-visible,
    .coop-header input:focus-visible {
        outline: 2px solid var(--coop-header-gold);
        outline-offset: -3px;
    }

    .coop-header .coop-header__menu-toggle {
        display: none;
    }
}

@media (min-width: 992px) and (max-width: 1599px) {
    .coop-header {
        --coop-header-font-size: 13px;
        --coop-header-link-padding: 7px;
        --coop-header-gutter: 20px;
    }

    .coop-header .coop-header__logo {
        width: 260px;
    }
}

@media (min-width: 992px) and (max-width: 1279px) {
    .coop-header {
        --coop-header-font-size: 11px;
        --coop-header-link-padding: 5px;
        --coop-header-gutter: 12px;
    }

    .coop-header .coop-header__top-inner {
        gap: 8px;
    }

    .coop-header .coop-header__secondary-link--cooperado {
        padding-inline: 12px;
    }

    .coop-header .coop-header__logo {
        width: 240px;
    }

    .coop-header .coop-header__anniversary-image {
        height: 135px;
    }
}

/* Mobile uses the same navigation tree as desktop. */
@media (max-width: 991px) {
    .coop-header {
        --coop-header-top-height: 64px;
        --coop-header-admin-offset: var(--wp-admin--admin-bar--height, 0px);
        position: relative;
        z-index: 1030;
        padding-top: var(--coop-header-top-height);
        width: 100%;
        color: #e6b800;
        font: 15px/1.5 'Poppins', sans-serif;
    }
    .coop-header *, .coop-header *::before, .coop-header *::after { box-sizing: border-box; }
    .coop-header .coop-header__top {
        position: fixed;
        top: var(--coop-header-admin-offset);
        left: 0;
        width: 100%;
        z-index: 1030;
        background: #356443;
        display: grid;
        grid-template-columns: 56px minmax(0, 1fr);
        align-items: center;
    }
    .coop-header button, .coop-header a { font: inherit; }
    .coop-header button {
        cursor: pointer;
        border: 0;
        border-radius: 0;
        color: inherit;
        background: transparent;
    }
    .coop-header .coop-header__menu-toggle {
        display: flex;
        align-items: center;
        gap: 12px;
        min-height: var(--coop-header-top-height);
        padding: 0 16px;
    }
    .coop-header .coop-header__menu-icon { font-size: 24px; }
    .coop-header .coop-header__menu-label { display: none; }
    .coop-header .coop-header__top-inner {
        grid-column: 1 / -1;
        width: 100%;
        max-height: calc(100vh - var(--coop-header-top-height) - var(--coop-header-admin-offset));
        max-height: calc(100dvh - var(--coop-header-top-height) - var(--coop-header-admin-offset));
        overflow-y: auto;
        overscroll-behavior: contain;
        background: #0d4828;
    }
    .coop-header ul { list-style: none; margin: 0; padding: 0; }
    .coop-header .coop-header__nav-heading { display: flex; }
    .coop-header .coop-header__nav-link,
    .coop-header .coop-header__nav-trigger,
    .coop-header .coop-header__secondary-link,
    .coop-header .coop-header__submenu-link {
        display: flex;
        align-items: center;
        min-height: 48px;
        padding: 12px 16px;
        color: #e6b800;
        text-decoration: none;
        overflow-wrap: anywhere;
        white-space: normal;
    }
    .coop-header .coop-header__nav-link { flex: 1; min-width: 0; }
    .coop-header .coop-header__submenu-toggle { min-width: 48px; min-height: 48px; padding: 12px 16px; }
    .coop-header .coop-header__nav-trigger { width: 100%; justify-content: space-between; text-align: left; }
    .coop-header .coop-header__nav-item + .coop-header__nav-item,
    .coop-header .coop-header__secondary { border-top: 1px solid rgb(255 255 255 / 15%); }
    .coop-header .coop-header__submenu { background: rgb(0 0 0 / 12%); }
    .coop-header .coop-header__submenu-link { padding-left: 28px; }
    .coop-header .coop-header__nav-item--contact .coop-header__nav-link { background: #37945a; color: #fff; font-weight: 700; }
    .coop-header .coop-header__secondary { padding: 8px 0; }
    .coop-header .coop-header__secondary-link--cooperado { background: #fff; color: #806632; font-weight: 700; }
    .coop-header .coop-header__main,
    .coop-header .coop-header__anniversary { display: none; }
    .coop-header .coop-header__logo {
        display: block;
        width: 220px;
        max-width: calc(100% - 32px);
        justify-self: end;
        margin-right: 16px;
    }
    .coop-header .coop-header__logo-image { display: block; width: 100%; height: auto; }
    .coop-header .coop-header__search { min-width: 0; padding: 8px 16px 16px; }
    .coop-header .coop-header__search-toggle { min-height: 44px; padding: 8px 0; font-weight: 700; }
    .coop-header .coop-header__search-form { padding: 12px 0 0; color: #fff; }
    .coop-header .coop-header__search-label { display: block; margin-bottom: 8px; }
    .coop-header .coop-header__search-input { width: 100%; min-height: 44px; padding: 10px; border: 1px solid #e6b800; border-radius: 0; background: #fff; color: #13331f; font: inherit; font-size: 16px; }
    .coop-header .coop-header__search-submit { min-height: 44px; margin-top: 12px; padding: 10px 20px; background: #37945a; color: #fff; font-weight: 700; }
    .coop-header a:focus-visible, .coop-header button:focus-visible, .coop-header input:focus-visible { outline: 2px solid #e6b800; outline-offset: -3px; }
    .coop-header a:not(.coop-header__logo):hover, .coop-header .coop-header__submenu-toggle:hover { background-color: #37945a; }
}

/* Keep the logo artwork static; keyboard focus outlines only its link. */
.coop-header .coop-header__logo,
.coop-header .coop-header__logo:is(:hover, :focus, :focus-visible, :active),
.coop-header .coop-header__logo .coop-header__logo-image,
.coop-header .coop-header__logo:is(:hover, :focus, :focus-visible, :active) .coop-header__logo-image {
    color: inherit;
    background: transparent;
    opacity: 1;
    filter: none;
    transform: none;
    animation: none;
    transition: none;
    text-decoration: none;
    border: 0;
    box-shadow: none;
}
.coop-header .coop-header__logo:focus-visible {
    outline: 1px solid #e6b800;
    outline-offset: 3px;
}
