/* Product recommendations continue past the right edge of the centered page frame. */
.gear-shop-page.xfg-product-page .xfg-product-related--reference {
    padding:48px 0 32px; border:0; overflow:hidden;
}
.gear-shop-page.xfg-product-page .xfg-product-related--reference > .xfg-shop-shell { width:min(1920px,100%); margin:auto; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-section-bar { justify-content:center; margin:0 24px 32px; text-align:center; }
.gear-shop-page .xfg-product-related--reference h2 { margin:0; font:600 22.4px/1.1 "XFG Condensed","Arial Narrow",sans-serif; letter-spacing:0; }
.gear-shop-page .xfg-product-related--reference .xfg-flow-carousel {
    display:flex; flex-direction:column; width:100%; --flow-gap:12px;
    --flow-card-width:calc((100% - 32px - 48px)/5);
}
.gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__viewport { width:calc(100% - 32px); margin-left:32px; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product { border:0; border-radius:8px; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product > a { padding:0 0 16px; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product__media { border-radius:8px 8px 0 0; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product__media > i { display:none; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product :is(small,h3,.xfg-product-price) { margin-inline:16px; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product small { margin-top:16px; font:600 10px/14px var(--shop-display); color:var(--shop-ink); }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product h3 { min-height:43px; margin-top:16px; font:600 19.2px/1.1 var(--shop-display); letter-spacing:0; }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product .xfg-product-price { margin-top:auto; padding-top:24px; font:600 16px/20px var(--shop-display); }
.gear-shop-page .xfg-product-related--reference .xfg-shop-product p { display:none; }
.gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls {
    order:1; justify-content:center; gap:16px; height:24px; min-height:24px; margin:32px 24px 0;
}
.gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls > button { flex:0 0 24px; width:24px; min-width:24px; height:24px; min-height:24px; padding:0; }
.gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls [data-carousel-count] { min-width:0; margin:0; font:400 16px/24px var(--shop-text); }
.gear-shop-page .xfg-product-related--reference [data-carousel-dots] { display:flex; gap:8px; }
.gear-shop-page .xfg-product-related--reference [data-carousel-dots] button { flex:0 0 8px; width:8px; min-width:8px; height:24px; }
.gear-shop-page .xfg-product-related--reference [data-carousel-dots] button::before { width:8px; height:8px; border:1px solid #ffd000; background:#ffd000; }
.gear-shop-page .xfg-product-related--reference [data-carousel-dots] button:is(.is-active,[aria-current="true"],[aria-pressed="true"])::before { background:var(--shop-surface); border-color:#ffd000; }

/* Compact link strip, followed by brand, social links, and the existing preview notice. */
.gear-shop-page .xfg-shop-footer--reference { border-top:1px solid #fff; background:var(--shop-surface); }
.xfg-shop-footer--reference .xfg-shop-footer__links {
    display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:16px;
    margin:0; padding:32px; border-bottom:1px solid #fff;
}
.xfg-shop-footer--reference .xfg-shop-footer__links a { display:flex; align-items:center; min-height:40px; padding:8px; color:#ddd; font:400 16px/1.25 var(--shop-text); letter-spacing:.6px; text-decoration:underline; text-underline-offset:2px; }
.xfg-shop-footer--reference .xfg-shop-footer__links a:hover { color:#fff; }
.xfg-shop-footer--reference .xfg-shop-footer__identity {
    display:flex; align-items:center; gap:48px; width:min(1920px,100%); margin:auto; padding:32px;
}
.gear-shop-page .xfg-shop-footer--reference .xfg-shop-brand { flex:none; gap:8px; padding:0; width:190px; }
.gear-shop-page .xfg-shop-footer--reference .xfg-shop-wordmark { font-size:19px; line-height:31px; }
.gear-shop-page .xfg-shop-footer--reference .xfg-shop-wordmark :is(strong,em) { font-size:19px; line-height:31px; }
.gear-shop-page .xfg-shop-footer--reference .xfg-shop-brand > i { height:17px; margin:0; }
.gear-shop-page .xfg-shop-footer--reference .xfg-shop-brand > b { font-size:10px; white-space:nowrap; }
.xfg-shop-footer--reference .xfg-shop-footer__socials { display:flex; flex:none; align-items:center; gap:12px; }
.xfg-shop-footer--reference .xfg-shop-footer__socials a { display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#24252a; }
.xfg-shop-footer--reference .xfg-shop-footer__socials img { display:block; width:16px; height:16px; object-fit:contain; filter:grayscale(1) brightness(0) invert(1); opacity:.65; }
.xfg-shop-footer--reference .xfg-shop-footer__socials a:hover img { opacity:1; }
.xfg-shop-footer--reference .xfg-shop-footer__notice { margin:0; color:#b9bec5; font:400 12.8px/1.4 var(--shop-text); }
.xfg-shop-footer--reference a:focus-visible { outline:2px solid #ffd000; outline-offset:4px; }
@media(min-width:1900px) {
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel { --flow-card-width:calc((100% - 40px - 48px)/5); }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__viewport { width:calc(100% - 40px); margin-left:40px; }
    .gear-shop-page.xfg-product-page .xfg-product-related--reference { padding-block:60px 40px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-section-bar { margin-bottom:40px; }
    .gear-shop-page .xfg-product-related--reference h2 { font-size:28px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product { border-radius:10px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product__media { border-radius:10px 10px 0 0; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product :is(small,h3,.xfg-product-price) { margin-inline:20px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product > a { padding-bottom:20px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product small { margin-top:20px; font-size:12.5px; line-height:17.5px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product h3 { margin-top:20px; min-height:53px; font-size:24px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product .xfg-product-price { padding-top:30px; font-size:20px; line-height:25px; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls { gap:20px; margin-top:40px; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls [data-carousel-count] { font-size:20px; }
    .gear-shop-page .xfg-product-related--reference [data-carousel-dots] { gap:10px; }
    .gear-shop-page .xfg-product-related--reference [data-carousel-dots] button { flex-basis:10px; width:10px; min-width:10px; }
    .gear-shop-page .xfg-product-related--reference [data-carousel-dots] button::before { width:10px; height:10px; }
    .xfg-shop-footer--reference .xfg-shop-footer__links { padding:40px; gap:20px; }
    .xfg-shop-footer--reference .xfg-shop-footer__links a { font-size:20px; padding:10px; }
    .xfg-shop-footer--reference .xfg-shop-footer__identity { padding:40px; gap:60px; }
    .xfg-shop-footer--reference .xfg-shop-footer__notice { font-size:16px; }
}
@media(min-width:701px) and (max-width:1199px) {
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel { --flow-card-width:calc((100% - 24px)/3.25); }
}
@media(max-width:700px) {
    .gear-shop-page.xfg-product-page .xfg-product-related--reference { padding:32px 0 24px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-section-bar { margin-bottom:24px; }
    .gear-shop-page .xfg-product-related--reference h2 { font-size:22px; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel { --flow-card-width:min(300px,calc(100% - 32px)); }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__viewport { width:calc(100% - 24px); margin-left:24px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product :is(small,h3,.xfg-product-price) { margin-inline:12px; }
    .gear-shop-page .xfg-product-related--reference .xfg-shop-product h3 { font-size:18px; min-height:40px; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls { margin-top:24px; min-height:44px; height:44px; gap:12px; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls > button { flex-basis:44px; width:44px; min-width:44px; height:44px; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls > [data-carousel-previous] { order:0; }
    .gear-shop-page .xfg-product-related--reference .xfg-carousel-progress { order:1; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls > [data-carousel-count] { order:2; }
    .gear-shop-page .xfg-product-related--reference .xfg-flow-carousel__controls > [data-carousel-next] { order:3; }
    .gear-shop-page .xfg-product-related--reference [data-carousel-dots] { display:none; }
    .gear-shop-page .xfg-product-related--reference .xfg-carousel-progress { display:block; flex:1; height:4px; background:#08090a; }
    .gear-shop-page .xfg-product-related--reference .xfg-carousel-progress > span { display:block; height:100%; background:#ffd000; }
    .xfg-shop-footer--reference .xfg-shop-footer__links { flex-direction:column; justify-content:center; padding:24px; gap:24px; }
    .xfg-shop-footer--reference .xfg-shop-footer__identity { flex-direction:column; padding:24px; gap:24px; text-align:center; }
    .xfg-shop-footer--reference .xfg-shop-footer__notice { font-size:14px; }
}
