/* Customer reference: notice, channels, hero, mosaic; compact catalogue. */
html.native-app .store-home { --reference-orange: #ff6018; }
html.native-app body:has(.home-hero) .site-header { background: #ff6018; }
html.native-app .store-home:has(.home-hero) { padding-top: 0; }
.home-hero { padding: 1px 12px 16px; margin: 0 -12px; background: #ff6018; }
.home-channel-nav { min-width: 0; margin: 0 -12px 8px; padding: 0 12px; color: #fff; }
.home-category-links { display: flex; align-items: center; gap: 25px; overflow-x: auto; scrollbar-width: none; overscroll-behavior-x: contain; }
.home-category-links::-webkit-scrollbar { display: none; }
.home-category-links a { position: relative; flex: 0 0 auto; padding: 10px 0 15px; color: #fff; font-size: 16px; line-height: 24px; white-space: nowrap; opacity: .85; }
.home-category-links a.selected { font-weight: 750; opacity: 1; }
.home-category-links a.selected::after { content: ""; position: absolute; bottom: 6px; left: 12%; right: 12%; height: 3px; border-radius: 2px; background: #fff; }
.home-category-links a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
html.native-app .home-hero .home-carousel { margin: 0; border: 0; border-radius: 10px; box-shadow: none; }
html.native-app .home-hero .home-carousel-viewport { aspect-ratio: 2.2 / 1; min-height: 0; max-height: none; }
html.native-app .home-hero .home-carousel-slide { grid-template-columns: 43% 57%; }
html.native-app .home-hero .home-carousel-copy { padding: 20px 8px 25px 16px; }
html.native-app .home-hero .home-carousel-copy h2 { font-size: 23px; line-height: 1.28; }
html.native-app .home-hero .home-carousel-copy p { font-size: 11px; }
html.native-app .home-hero .home-carousel-product img { width: 100%; height: 100%; max-height: none; object-fit: cover; border-radius: 0; }
html.native-app .store-home .promo-mosaic { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 3px; aspect-ratio: 2 / 1; min-height: 0; margin: 10px 0; border-radius: 10px; overflow: hidden; }
html.native-app .store-home .promo-card { grid-row: auto; grid-column: auto; border: 0; border-radius: 0; box-shadow: none; }
html.native-app .store-home .promo-card-1 { grid-row: 1 / 3; grid-column: 1; }
html.native-app .store-home .promo-card-2 { grid-row: 1; grid-column: 2 / 4; }
html.native-app .store-home .promo-card-3 { grid-row: 2; grid-column: 2; }
html.native-app .store-home .promo-card-4 { grid-row: 2; grid-column: 3; }
html.native-app .store-home .promo-card img { inset: 0; width: 100%; height: 100%; object-fit: cover; }
html.native-app .store-home .promo-card-copy,
html.native-app .store-home .promo-card-1 .promo-card-copy { width: 100%; height: 100%; padding: 7px; gap: 3px; justify-content: flex-end; background: linear-gradient(0deg, #23100ecf, #23100e50 40%, transparent 75%); }
html.native-app .store-home .promo-card-copy small { align-self: flex-start; padding: 2px 4px; font-size: 9px; }
html.native-app .store-home .promo-card-copy strong { -webkit-line-clamp: 1; font-size: 10px; line-height: 1.35; }
html.native-app .store-home .promo-card-1 .promo-card-copy strong { -webkit-line-clamp: 2; font-size: 14px; }
html.native-app .store-home .promo-card-copy em { font-size: 12px; line-height: 1.3; }
html.native-app .store-home .promo-card-copy .credit-unit { display: none; }
html.native-app .store-home .home-notice { min-height: 42px; margin: 10px 0; padding: 8px 10px; gap: 10px; border: 0; border-radius: 4px; background: #ff7027; color: #502409; font-size: 12px; }
html.native-app .store-home .home-notice-label { color: #ec4a0b; }
html.native-app .store-home .home-notice-label svg { width: 25px; height: 25px; }
html.native-app .home-hero .home-notice { margin: 4px 0 2px; }
.catalog-titlebar { display: grid; grid-template-columns: 44px 1fr 44px; align-items: center; min-height: 52px; padding: 0 10px; color: #222; }
.catalog-titlebar > a { display: grid; place-items: center; width: 40px; height: 40px; }
.catalog-titlebar h1 { text-align: center; font-size: 19px; font-weight: 550; line-height: 1.5; }
html.native-app body:has(.store-catalog) .catalog-list-header { background: #fff; box-shadow: none; border: 0; }
html.native-app body:has(.store-catalog) .catalog-list-header .header-inner { display: block; width: 100%; padding: 0 10px 10px; }
html.native-app .catalog-list-header .header-actions,
html.native-app .catalog-list-header .brand { display: none; }
html.native-app body:has(.store-catalog) .catalog-list-header .site-search { width: 100%; height: 36px; max-width: none; border: 0; border-radius: 24px; box-shadow: none; background: #f4f4f4; }
html.native-app body:has(.store-catalog) .catalog-list-header .site-search button { padding-inline: 15px; background: transparent; color: #888; border-radius: 0 24px 24px 0; }
html.native-app .store-catalog { padding-top: 0; }
.catalog-sort-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 -12px; padding: 0 12px; background: #fff; }
.catalog-sort-tabs a { position: relative; display: flex; justify-content: center; align-items: center; gap: 5px; min-height: 55px; padding: 10px 0; font-size: 16px; color: #999; }
.catalog-sort-tabs a.selected { color: #222; font-weight: 650; }
.catalog-sort-tabs a.selected::after { content: ""; position: absolute; bottom: 7px; left: calc(50% - 18px); width: 36px; height: 2px; border-radius: 2px; background: #ed251d; }
.catalog-price-arrows { display: flex; flex-direction: column; font-size: 11px; line-height: 8px; color: #c8c8c8; }
.catalog-price-arrows .active { color: #ed251d; }
html.native-app .store-catalog .catalog-results { padding-top: 10px; }
html.native-app .store-home .catalog-product-card { border-radius: 6px; box-shadow: none; }
html.native-app .store-home .catalog-product-card .product-image { border-radius: 0; }
html.native-app .store-home .catalog-product-card .product-info { padding: 10px; }
html.native-app .store-home .catalog-product-card .product-title { min-height: 44px; font-size: 14px; font-weight: 450; line-height: 1.55; }
.catalog-card-price { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin: 4px 0 6px; color: #ed251d; }
.catalog-credit-label { padding: 2px 4px; border-radius: 3px; background: #ed251d; color: #fff; font-size: 11px; line-height: 18px; white-space: nowrap; }
.catalog-card-price strong { font-size: 21px; line-height: 24px; font-weight: 500; }
.catalog-card-footer { display: flex; justify-content: space-between; align-items: center; gap: 5px; min-height: 18px; color: #999; font-size: 11px; }
.catalog-card-footer del { flex-shrink: 0; }
.catalog-card-footer > span:last-child { white-space: nowrap; }
@media (max-width: 700px) {
  html.native-app .store-home { width: 100%; padding-inline: 10px; }
  .home-hero { padding-inline: 10px; margin-inline: -10px; }
  .home-channel-nav { margin-inline: -10px; padding-inline: 12px; }
  .home-category-links { gap: 22px; }
  .catalog-sort-tabs { margin-inline: -10px; padding-inline: 10px; }
  html.native-app .store-home .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  html.native-app .store-home .home-deals { margin-inline: 0; width: 100%; border-radius: 4px; }
}
@media (min-width: 701px) {
  .home-hero { margin-inline: -16px; padding: 1px 16px 20px; }
  .home-channel-nav { margin-inline: -16px; padding-inline: 16px; }
  .home-category-links { gap: 30px; }
  html.native-app .home-hero .home-carousel-viewport { aspect-ratio: 3 / 1; max-height: 330px; }
  html.native-app .home-hero .home-carousel-copy { padding: 35px; }
  html.native-app .home-hero .home-carousel-copy h2 { font-size: 32px; }
  html.native-app .store-home .promo-mosaic { aspect-ratio: 2.7 / 1; }
  html.native-app .store-home .promo-card-copy { padding: 15px; }
  html.native-app .store-home .promo-card-copy strong { font-size: 16px; }
  html.native-app .store-home .promo-card-1 .promo-card-copy strong { font-size: 24px; }
  .catalog-sort-tabs { margin-inline: -16px; }
  .catalog-titlebar { max-width: 960px; margin-inline: auto; }
}
@media (max-width: 359px) {
  .home-category-links a { font-size: 15px; }
  html.native-app .home-hero .home-carousel-copy { padding: 14px 5px 20px 12px; }
  html.native-app .home-hero .home-carousel-copy h2 { font-size: 20px; }
  html.native-app .store-home .catalog-product-card .product-info { padding: 8px; }
  html.native-app .store-home .catalog-product-card .product-title { font-size: 13px; min-height: 40px; }
  .catalog-card-price { gap: 5px; }
  .catalog-card-price strong { font-size: 19px; }
  .catalog-card-footer { font-size: 10px; }
}
