/* Shared Gear Shop frame, controls, and category-card button trays. */
.gear-shop-page { --shop-button:#ffd000; --shop-button-hover:#554500; --shop-frame:#24272a; }
.gear-shop-page .shop-entry-cards { padding-top:32px; }
.gear-shop-page .shop-entry-cards__grid { gap:32px; }
.gear-shop-page .shop-entry-card,
.gear-shop-page .shop-entry-card:hover { background:var(--shop-frame); border:0; border-radius:0; text-decoration:none; }
.gear-shop-page .shop-entry-card__image { aspect-ratio:16/9; }
.gear-shop-page .shop-entry-card > span.shop-entry-card__button {
    min-height:38px; margin:12px; padding:8px 16px; border:1px solid var(--shop-button);
    background:var(--shop-button); color:#080808;
    font:600 16px/1.2 "XFG Condensed","Arial Narrow",sans-serif;
    letter-spacing:0; text-transform:none; transition:none;
}
.gear-shop-page .shop-entry-card:focus-visible > span.shop-entry-card__button {
    background:var(--shop-button-hover); color:#fff;
}
.gear-shop-page .shop-entry-card:focus-visible { outline:2px solid var(--shop-button); outline-offset:4px; }
.gear-shop-page .shop-entry-card img,
.gear-shop-page .shop-entry-card:hover img {
    transform:scale(var(--entry-image-scale,1)); transition:transform 300ms ease;
}
/* Fill the wide apparel frame while keeping both shirt designs visible. */
.gear-shop-page .shop-entry-card--apparel { --entry-image-scale:1.45; }
/* Card hover zooms the image; only entering the button changes its color. */
@media(hover:hover) and (pointer:fine) {
    .gear-shop-page .shop-entry-card:hover img { transform:scale(calc(var(--entry-image-scale,1) * 1.05)); }
    .gear-shop-page .shop-entry-card > span.shop-entry-card__button:hover { background:var(--shop-button-hover); color:#fff; }
}

.gear-shop-page .xfg-shop-icon { display:block; width:24px; height:24px; flex:none; }
.gear-shop-page .xfg-shop-actions { align-items:center; gap:16px; }
.gear-shop-page .xfg-shop-actions button {
    display:grid; place-items:center; flex:none; width:56px; height:56px; min-width:0;
    padding:0; border:0; border-radius:0; background:#191b1d; color:#fff;
}
.gear-shop-page .xfg-shop-actions button:is(:hover,[aria-expanded="true"]) { background:#101112; }
.gear-shop-page .xfg-shop-actions button:focus-visible,
.gear-shop-page .xfg-shop-account-button:focus-visible { outline:2px solid var(--shop-button); outline-offset:3px; }
.gear-shop-page .xfg-shop-utilities .xfg-shop-account-button {
    display:grid; place-items:center; width:44px; height:44px; color:#fff;
}
.gear-shop-page .xfg-shop-account-button .xfg-shop-icon { width:22px; height:22px; }
.gear-shop-page .xfg-shop-utilities .xfg-shop-account-button:hover { color:var(--shop-button); }
.gear-shop-page .xfg-shop-mega__trigger {
    gap:10px; font-size:14px; letter-spacing:0; text-transform:none;
}
.gear-shop-page .xfg-shop-mega__trigger::after {
    content:""; flex:none; width:6px; height:6px; margin-top:-3px;
    border:solid currentColor; border-width:0 1px 1px 0; transform:rotate(45deg);
}
.gear-shop-page .xfg-shop-mega__trigger[aria-expanded="true"]::after { transform:rotate(225deg); margin-top:3px; }

.gear-shop-page :is(.xfg-shop-hero__copy > a,.xfg-flow-feature__story > div > a,.xfg-shop-drop-banner a,.xfg-shop-editorial__copy > a,.xfg-shop-cart > a) {
    min-height:38px; padding:8px 16px; border:1px solid var(--shop-button); border-radius:0;
    background:var(--shop-button); color:#080808; box-shadow:none; transform:none;
    font:600 16px/1.2 "XFG Condensed","Arial Narrow",sans-serif; letter-spacing:0; text-transform:none;
    transition:background-color 160ms ease,color 160ms ease;
}
.gear-shop-page :is(.xfg-shop-hero__copy > a,.xfg-flow-feature__story > div > a,.xfg-shop-drop-banner a,.xfg-shop-editorial__copy > a,.xfg-shop-cart > a):is(:hover,:focus-visible) {
    background:var(--shop-button-hover); color:#fff; transform:none;
}
@media(min-width:821px) {
    .gear-shop-page .xfg-shop-header { padding-bottom:16px; }
    .gear-shop-page .xfg-shop-topbar { width:min(1440px,100%); min-height:88px; margin:auto; padding-inline:32px; border:0; }
    .gear-shop-page .xfg-shop-navbar { width:min(1376px,calc(100% - 64px)); min-height:74px; margin:0 auto; padding:8px 16px; border:0; background:var(--shop-frame); }
    .gear-shop-page .xfg-shop-actions { min-height:56px; }
    .gear-shop-page .xfg-shop-shell:not(.xfg-shop-hero__inner) { width:min(1376px,calc(100% - 64px)); }
    .gear-shop-page .xfg-shop-navigation .xfg-shop-mega__panel { max-height:calc(100dvh - 178px); }
}
@media(min-width:821px) and (max-width:1100px) {
    .gear-shop-page .xfg-shop-mega__trigger { padding-inline:10px; gap:8px; font-size:13px; }
    .gear-shop-page .xfg-shop-actions { gap:8px; }
    .gear-shop-page .xfg-shop-actions button { width:48px; height:48px; }
    .gear-shop-page .xfg-shop-navbar { padding-inline:10px; gap:8px; }
}
@media(max-width:820px) {
    .gear-shop-page .shop-entry-cards__grid { gap:20px; }
    .gear-shop-page .shop-entry-card > span.shop-entry-card__button { min-height:44px; margin:10px; padding:8px; }
    .gear-shop-page .xfg-shop-actions { gap:8px; }
    .gear-shop-page .xfg-shop-actions button { width:44px; height:44px; }
    .gear-shop-page :is(.xfg-shop-hero__copy > a,.xfg-flow-feature__story > div > a,.xfg-shop-drop-banner a,.xfg-shop-editorial__copy > a,.xfg-shop-cart > a) { min-height:44px; }
}
@media(max-width:560px) {
    .gear-shop-page .shop-entry-cards { padding-top:24px; }
    .gear-shop-page .xfg-shop-actions .xfg-shop-search-button { display:none; }
    .gear-shop-page .xfg-shop-actions .xfg-shop-cart-button { background:transparent; }
    .gear-shop-page .xfg-shop-search::before { top:13px; right:19px; width:14px; height:14px; border-width:1.5px; }
    .gear-shop-page .xfg-shop-search::after { top:27px; right:12px; width:8px; height:1.5px; }
}
@media(prefers-reduced-motion:reduce) {
    .gear-shop-page .shop-entry-card__button { transition:none; }
    .gear-shop-page .shop-entry-card img,
    .gear-shop-page .shop-entry-card:hover img { transform:scale(var(--entry-image-scale,1)); transition:none; }
}
