/* Two mobile header rows: utility links, then menu, logo and cart. */
@media (max-width: 959px) {
    #ty-header-mobile {
        height: 136px;
        padding-top: 8px;
        background: #1e1e20;
        outline: 0;
        box-shadow: 0 2px 8px rgb(0 0 0 / 18%);
    }
    body main.ty-content { padding-top: 152px; }
    #ty-header-mobile .ty-mobile-utility-row,
    #ty-header-mobile .ty-mobile-brand-row {
        display: flex;
        align-items: center;
        gap: 8px;
        padding-inline: 12px;
    }
    #ty-header-mobile .ty-mobile-utility-row { height: 56px; justify-content: center; gap: 6px; }
    #ty-header-mobile .ty-mobile-brand-row { height: 72px; justify-content: space-between; }
    #ty-header-mobile .ty-mobile-pill {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-height: 44px;
        padding: 8px 12px;
        border: 1px solid #999;
        border-radius: 24px;
        color: #fff;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.2;
        white-space: nowrap;
        text-decoration: none;
    }
    #ty-header-mobile .ty-mobile-search-button { margin-right: 0; flex-shrink: 0; }
    #ty-header-mobile .ty-mobile-search-button,
    #ty-header-mobile .ty-mobile-menu-button {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 48px;
        padding: 0;
        border: 0;
        background: transparent;
        color: #fff;
        cursor: pointer;
        font-size: 24px;
        list-style: none;
    }
    #ty-header-mobile .ty-mobile-menu-button { font-size: 28px; flex-shrink: 0; }
    #ty-header-mobile .ty-mobile-brand {
        display: flex;
        align-items: center;
        gap: 8px;
        flex: 1;
        min-width: 0;
    }
    #ty-header-mobile .ty-mobile-logo { display: flex; align-items: center; width: 190px; min-width: 0; }
    #ty-header-mobile .ty-mobile-logo img { display: block; width: 100%; height: auto; max-height: 48px; object-fit: contain; }
    #ty-header-mobile .ty-mobile-cart {
        width: auto;
        min-height: 44px;
        padding: 10px 14px;
        gap: 6px;
        border: 0;
        border-radius: 24px;
        background: #b3541b;
        font-size: 16px;
        line-height: 1.2;
        white-space: nowrap;
        flex-shrink: 0;
    }
    #ty-header-mobile :is(a, button, summary):focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
}
@media (max-width: 359px) {
    #ty-header-mobile .ty-mobile-pill { font-size: 14px; padding-inline: 8px; }
    #ty-header-mobile .ty-mobile-cart { font-size: 14px; padding-inline: 8px; }
    #ty-header-mobile .ty-mobile-brand { gap: 4px; }
}

.ty-category-search .ty-category-close { display: none; }
@media (max-width: 959px) {
    #ty-category-menu {
        width: min(350px, calc(100vw - 24px));
        height: 100vh;
        height: 100dvh;
    }
    #ty-category-menu .ty-category-search {
        display: block;
        position: sticky;
        top: 0;
        z-index: 3;
        background: #252528;
    }
    #ty-category-menu .ty-category-search input { padding-right: 80px; }
    #ty-category-menu .ty-category-search .ty-close-search { right: 52px; }
    #ty-category-menu .ty-category-close {
        display: flex;
        position: absolute;
        top: 3px;
        right: 4px;
        z-index: 2;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        border: 0;
        background: transparent;
        color: #fff;
        font-size: 20px;
        cursor: pointer;
    }
    #ty-category-menu .ty-category-close:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
    #ty-category-menu .ty-header-search-results {
        max-height: calc(100vh - 52px);
        max-height: calc(100dvh - 52px);
    }
}
