/* Unified related / upsell / cross-sell / recently-viewed sections. */
.awp-product-recommendations{position:relative;display:block;clear:both;width:100%;min-width:0;max-width:100%;margin-block:30px 0;color:var(--color-text,#23254e);isolation:isolate}
.awp-product-recommendations__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
.awp-product-recommendations__header h2{position:relative!important;display:block;margin:0!important;color:var(--color-text,#23254e);font-size:1.25rem!important;font-weight:700!important;line-height:1.7!important}
.awp-product-recommendations__carousel{position:relative;display:block;width:100%;min-width:0;max-width:100%}
.awp-product-recommendations__viewport{width:100%;min-width:0;max-width:100%;overflow-x:auto!important;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:none}
.awp-product-recommendations__viewport::-webkit-scrollbar{display:none}
.awp-product-recommendations--slider .products.awp-product-recommendations__rail{display:flex!important;width:100%!important;min-width:100%!important;max-width:none!important;flex-wrap:nowrap!important;column-gap:var(--awp-rec-gap,16px)!important;row-gap:0!important;overflow:visible!important;border:0;margin:0!important;padding:0!important;list-style:none}
.awp-product-recommendations--slider .products.awp-product-recommendations__rail>.product{box-sizing:border-box!important;flex:0 0 calc((100% - (var(--awp-rec-gap,16px) * (var(--awp-rec-columns,4) - 1))) / var(--awp-rec-columns,4))!important;width:calc((100% - (var(--awp-rec-gap,16px) * (var(--awp-rec-columns,4) - 1))) / var(--awp-rec-columns,4))!important;min-width:calc((100% - (var(--awp-rec-gap,16px) * (var(--awp-rec-columns,4) - 1))) / var(--awp-rec-columns,4))!important;max-width:calc((100% - (var(--awp-rec-gap,16px) * (var(--awp-rec-columns,4) - 1))) / var(--awp-rec-columns,4))!important;margin:0!important;scroll-snap-align:none}
.awp-product-recommendations--slider .products.awp-products-preset-retail.awp-product-recommendations__rail{border:0!important;column-gap:0!important}
.awp-product-recommendations--slider .products.awp-products-preset-retail.awp-product-recommendations__rail>.product .awp-product-card--retail{height:100%;border:0;border-block-start:1px solid var(--color-gray200,#e0e0e2);border-block-end:1px solid var(--color-gray200,#e0e0e2);border-inline-end:1px solid var(--color-gray200,#e0e0e2)}
.awp-product-recommendations--slider .products.awp-products-preset-retail.awp-product-recommendations__rail>.product:first-child .awp-product-card--retail{border-inline-start:1px solid var(--color-gray200,#e0e0e2)}
.awp-product-recommendations--grid .products.awp-products-preset-retail.grid-column{border-block-end:1px solid var(--color-gray200,#e0e0e2);border-inline-end:1px solid var(--color-gray200,#e0e0e2)}
.awp-product-recommendations__nav{top:50%;z-index:24}
.awp-product-recommendations__nav.is-hidden{opacity:0!important;visibility:hidden;pointer-events:none}
.awp-product-recommendations__nav:not(.is-hidden){opacity:1;visibility:visible}
.awp-product-recommendations-after-services{display:flex;width:100%!important;min-width:0;max-width:100%!important;flex:0 0 100%!important;flex-direction:column;gap:0}.awp-product-recommendations:not(.awp-product-recommendations--grid){--awp-rec-gap:16px}

body[data-theme=dark] .awp-product-recommendations__header h2{color:var(--color-text,#f5f5f5)}
body[data-theme=dark] .awp-product-recommendations--slider .products.awp-products-preset-retail.awp-product-recommendations__rail>.product .awp-product-card--retail,
body[data-theme=dark] .awp-product-recommendations--grid .products.awp-products-preset-retail.grid-column{border-color:var(--color-dark300,#34353d)}

/* Product layout type 3 uses `display: contents` for .product-content on wide
 * screens. Assign the unified sections to their own grid rows, otherwise all
 * new wrappers inherit the generic row 11 and visually stack on each other. */
@media screen and (min-width:1200px){
  .single-product-wrapper.style-3.has-stable-product-layout>.awp-product-recommendations-after-services{grid-column:1/-1;grid-row:5;min-width:0;width:100%!important;max-width:100%!important}
  .single-product-wrapper.style-3.has-stable-product-layout>.awp-product-recommendations-after-services>.awp-product-recommendations{margin-inline:var(--theme-site-gutters)}
  .single-product-wrapper.style-3.has-stable-product-layout>.product-content>.awp-product-recommendations{grid-column:1/-1;min-width:0;margin-inline:var(--theme-site-gutters)}
  .single-product-wrapper.style-3.has-stable-product-layout>.product-content>.awp-product-recommendations--upsell{grid-row:7}
  .single-product-wrapper.style-3.has-stable-product-layout>.product-content>.awp-product-recommendations--related{grid-row:8}
  .single-product-wrapper.style-3.has-stable-product-layout>.product-content>.awp-product-recommendations--recent{grid-row:9}
}

@media(min-width:768px){.awp-product-recommendations--hide-desktop{display:none!important}}
@media(max-width:767.98px){
  .awp-product-recommendations{margin-block:22px 0}
  .awp-product-recommendations__header{margin-bottom:10px}
  .awp-product-recommendations__header h2{font-size:1rem!important}
  .awp-product-recommendations--hide-mobile{display:none!important}
  .awp-product-recommendations__nav{display:none!important}
  .awp-product-recommendations--slider{--awp-rec-gap:12px}
  .awp-product-recommendations--slider .awp-product-recommendations__viewport{overflow-x:auto!important;-webkit-overflow-scrolling:touch;scroll-snap-type:inline proximity}
  .awp-product-recommendations--slider .products.awp-product-recommendations__rail>.product{flex-basis:calc((100% - (var(--awp-rec-gap,12px) * (var(--awp-rec-mobile-columns,2) - 1))) / var(--awp-rec-mobile-columns,2))!important;width:calc((100% - (var(--awp-rec-gap,12px) * (var(--awp-rec-mobile-columns,2) - 1))) / var(--awp-rec-mobile-columns,2))!important;min-width:calc((100% - (var(--awp-rec-gap,12px) * (var(--awp-rec-mobile-columns,2) - 1))) / var(--awp-rec-mobile-columns,2))!important;scroll-snap-align:start}
  .awp-product-recommendations--grid .products.grid-column:not(.mobile-grid-2)>.product{flex:0 0 100%!important;width:100%!important;max-width:100%!important}
}

/* Placement contract for recommendations rendered directly after the service/banner area.
 * This wrapper intentionally has its own class, so define its responsive order here
 * instead of relying on the legacy .awp-type3-after-services-content selectors. */
@media(max-width:1199.98px){
  .single-product-wrapper.style-3>.awp-product-recommendations-after-services{
    order:8;
    width:100%!important;
    min-width:0;
    max-width:100%!important;
    flex:0 0 100%!important;
  }
}

@media(max-width:767.98px){
  body.asanwp-mobile-product-experience .single-product-wrapper.style-3>.awp-product-recommendations-after-services{
    order:8!important;
    position:relative;
    z-index:8;
    width:100%!important;
    padding-inline:12px;
    background:var(--awp-mp-surface,var(--color-background,#fff));
  }

  body.asanwp-mobile-product-experience .single-product-wrapper.style-3>.awp-product-recommendations-after-services>.awp-product-recommendations{
    width:100%;
    min-width:0;
    max-width:100%;
  }
}

body[data-theme=dark].asanwp-mobile-product-experience .single-product-wrapper.style-3>.awp-product-recommendations-after-services{
  background:var(--color-background);
}
