/* Store corrections: same artwork, fade treatment and shared footer. */
.storefront-page main { padding-top:0; }
@media(min-width:701px) {
 .storefront-page.section-page .storefront-hero__slide:first-child > img {
  width:auto;
  max-width:78%;
 }
 .storefront-page.section-page .storefront-hero__slide:first-child .storefront-hero__shade {
  background:linear-gradient(0deg,#1b1b1b 0%,#1b1b1b00 18%),linear-gradient(90deg,#1b1b1b 0%,#1b1b1bf0 25%,#1b1b1b00 53%);
 }
}
.storefront-page .site-footer--compact { position:relative; }
.storefront-page .site-footer--compact::before {
 content:'';position:absolute;top:0;left:0;right:0;height:20px;z-index:1;
 background:linear-gradient(180deg,#000,transparent);pointer-events:none;
}
.storefront-page .site-footer--compact .footer-privacy-choices {
 display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0;border:0;border-radius:0;
 background:transparent;color:#adabab;font:400 14px/20px 'XFG Condensed','Arial Narrow',Arial,sans-serif;
 letter-spacing:.5632px;text-transform:uppercase;white-space:nowrap;cursor:pointer;
}
.storefront-page .site-footer--compact .footer-privacy-choices:is(:hover,:focus-visible) { color:#fff;background:transparent; }
.storefront-page .site-footer--compact .footer-privacy-choices:focus-visible { outline:2px solid #ffd000;outline-offset:4px; }
.storefront-page .site-footer--compact .footer-privacy-choices svg { display:block;flex:none;width:28px;height:14px;margin-left:5px; }
@media(min-width:761px) {
 .storefront-page .site-footer--compact .footer-legal-links { column-gap:0; }
 .storefront-page .site-footer--compact .footer-legal-links>:is(a,button)+:is(a,button)::before {
  position:static;display:block;flex:0 0 1px;width:1px;height:12px;margin-inline:16px;border-radius:0;
  background:#ffffff6b;content:'';transform:none;pointer-events:none;
 }
}
@media(max-width:760px) { .storefront-page .site-footer--compact .footer-privacy-choices { width:100%; } }

/* Mobile Store campaigns: artwork, lockup and controls share one compact stage. */
@media (max-width:700px) {
    .storefront-page .storefront-hero.storefront-hero--free {
        display:block;
        height:clamp(345px,108vw,600px);
        min-height:0;
        padding:0;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__slides {
        position:relative;
        inset:auto;
        height:100%;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__slide {
        display:block;
        height:100%;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__slide > img {
        position:absolute;
        inset:0;
        width:100%;
        max-width:none;
        height:100%;
        aspect-ratio:auto;
        object-fit:cover;
        object-position:92% center;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__shade {
        display:block;
        inset:0;
        height:100%;
        background:linear-gradient(0deg,#1b1b1b 0%,#1b1b1bb3 17%,#1b1b1b66 36%,#1b1b1b00 65%);
        pointer-events:none;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__content {
        position:absolute;
        z-index:2;
        inset:auto 0 57px;
        width:100%;
        padding:0 18px;
        transform:none;
        align-items:center;
        text-align:center;
    }
    .storefront-page .storefront-hero.storefront-hero--free .store-campaign-lockup {
        justify-content:center;
        text-align:center;
        text-shadow:0 2px 12px #0009;
    }
    .storefront-page .storefront-hero.storefront-hero--free .store-campaign-lockup :is(h1,h2) {
        gap:6px;
        font-size:clamp(38px,10.8vw,60px);
        line-height:.88;
        letter-spacing:.5px;
    }
    .storefront-page .storefront-hero.storefront-hero--free .store-campaign-lockup strong {
        max-width:none;
        font-size:clamp(18px,5.2vw,28px);
        line-height:1.1;
        letter-spacing:.5px;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__content > span {
        display:none;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__content > a {
        min-width:172px;
        min-height:44px;
        margin-top:16px;
        padding:11px 20px;
        border-radius:2px;
        font-size:14px;
        line-height:1.2;
        letter-spacing:.4px;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__navigation {
        bottom:3px;
        gap:8px;
        min-height:44px;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__selector,
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__selector[aria-pressed="true"] {
        width:44px;
        height:44px;
    }
    .storefront-page .storefront-hero.storefront-hero--free .storefront-hero__selector::after {
        width:36px;
        height:3px;
    }
    .storefront-page .storefront-hero.storefront-hero--free + .store-quick-links {
        margin-top:18px;
    }
}

/* Store mobile drawer: document scrolling and the roomier Store navigation. */
@font-face {
    font-family:'XFG Store Navigation'; font-style:normal; font-weight:500; font-display:swap;
    src:url('../media/fonts/barlow-medium.woff') format('woff');
}
/* Keep page scrolling available while the Store drawer is open. */
    html:has(body.storefront-page.site-menu-open) { overflow-y:auto; }
    body.storefront-page.site-menu-open { overflow-x:hidden; overflow-y:visible; overscroll-behavior:auto; }
    .storefront-page .xfg-header.is-store-menu-anchored {
        position:fixed;
        top:16px;
        transform:none;
        transition:none;
    }
    .storefront-page .xfg-header.is-store-menu-anchored.is-scrolled { top:0; }
    .storefront-page .xfg-header .xfg-store-menu[aria-hidden=false] {
        max-height:min(var(--xfg-menu-content-height,1200px),calc(100dvh - 80px));
        overflow-y:auto;
        overscroll-behavior-y:auto;
    }
    .storefront-page .xfg-store-menu__group { position:relative; gap:0; padding:8px 0; }
    .storefront-page .xfg-store-menu__group + .xfg-store-menu__group { border-top:0; padding-top:16px; }
    .storefront-page .xfg-store-menu__group h2 a {
        display:flex; align-items:center; min-height:36px; padding:4px 12px 8px;
        font:700 20px/1.2 'XFG Condensed','Arial Narrow',sans-serif;
        letter-spacing:.6px;
    }
    .storefront-page .xfg-store-menu__group > a,
    .storefront-page .xfg-store-menu .xfg-mobile-menu__toggle {
        display:flex; align-items:center; min-height:40px; padding:9px 12px;
        font:500 16px/1.35 'XFG Store Navigation','Arial Narrow',sans-serif;
        letter-spacing:1px;
    }
    .storefront-page .xfg-store-menu__group + .xfg-store-menu__group::before,
    .storefront-page .xfg-store-menu__account::before {
        content:''; position:absolute; z-index:2; top:0; left:8px; right:8px; height:1px;
        background:linear-gradient(90deg,#d9d9d930,#d9d9d9 50%,#d9d9d930);
        pointer-events:none;
    }
    .storefront-page .xfg-store-menu__account {
        position:relative; min-height:40px; padding:0 12px; border:0; background:transparent;
    }
    .storefront-page .xfg-store-menu__account a {
        min-height:40px; padding:9px 0;
        font:500 16px/1.35 'XFG Store Navigation','Arial Narrow',sans-serif; letter-spacing:1px;
    }
    .storefront-page .xfg-store-menu__account a + a::before {
        content:''; width:1px; height:16px; margin-inline:7px; background:currentColor;
    }
    .storefront-page .xfg-store-menu a:focus-visible { outline:2px solid #ffda00; outline-offset:-3px; }
    .storefront-page .xfg-store-menu .xfg-mobile-menu__toggle { gap:7px; }
    .storefront-page .xfg-store-menu .xfg-mobile-menu__toggle span { width:12px; }
    .storefront-page .xfg-store-menu .xfg-mobile-menu__toggle span::after { font-size:18px; font-weight:400; }
    .storefront-page .xfg-store-menu .xfg-mobile-menu__toggle[aria-expanded=true] span::after { content:'−'; font-size:18px; }
    .storefront-page .xfg-store-menu .xfg-mobile-menu__children a {
        height:auto; min-height:40px; padding:10px 24px;
        font:500 14px/1.4 'XFG Store Navigation','Arial Narrow',sans-serif;
        letter-spacing:.7px;
    }
    .storefront-page .xfg-header .xfg-store-menu::after { content:none; }
    .storefront-page .xfg-header .xfg-store-menu {
        border-top:1px solid #d9d9d9;
        border-image:linear-gradient(90deg,#d9d9d930,#d9d9d9 50%,#d9d9d930) 1;
    }
@media (max-width:1000px) {
    .storefront-page .xfg-header .xfg-store-menu { width:100%; }
}

/* Desktop uses the compact Store list; the wider XFG/account section is mobile-only. */
@media (min-width:1001px) {
    .storefront-page .xfg-store-menu .xfg-store-menu__mobile-only { display:none; }
}

/* Store account controls follow the Store menu's responsive breakpoint. */
@media (min-width:1001px) {
    .storefront-page .xfg-header .xfg-header__actions > .xfg-member-menu { display:flex; }
}
