/**
 * Homepage mobile only — Figma 908:3026, strip layout 1068:3642
 * All rules inside max-width: 991.98px — desktop untouched.
 */
@media (max-width: 991.98px) {

  /* ── Page shell ── */
  .homepage-r {
    background-color: #f7f7f7;
    overflow-x: hidden;
    width: 100%;
    max-width: 100%;
  }

  .homepage-r .container-fluid {
    padding-left: 12px !important;
    padding-right: 12px !important;
    max-width: 100%;
  }

  /* Bootstrap .row negative margins cause horizontal scroll */
  .homepage-r .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100%;
  }

  .homepage-r .container-fluid.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100%;
  }

  .homepage-r [class*='col-'] {
    min-width: 0;
  }

  /* ── Typography (override dashboard.css .card 22px / .text-gray 18px) ── */
  .homepage-r,
  .homepage-r .card,
  .homepage-r .card-body,
  .homepage-r .text-gray,
  .homepage-r .best-sellers {
    font-family: 'diroz', Tahoma, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    font-weight: 400;
    color: #6c757d;
  }

  .homepage-r .card-body.small {
    font-size: 14px !important;
  }

  .homepage-r .card-title-label,
  .homepage-r .card-title-label a {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    color: #6c757d !important;
  }

  .homepage-r .card-title,
  .homepage-r .card-title.text-warning,
  .homepage-r .text-warning.font-weight-bold {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
  }

  .homepage-r .text-size-12 {
    font-size: 12px !important;
  }

  .homepage-r .old-price {
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
  }

  .homepage-r .price-box {
    font-size: 13px !important;
  }

  .homepage-r .badge,
  .homepage-r .badge-pill,
  .homepage-r .badge-danger {
    font-size: 13px !important;
    font-weight: 700 !important;
  }

  .homepage-r #time {
    font-family: 'diroz', Tahoma, Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
  }

  .homepage-r .bg-red h3,
  .homepage-r .bg-red .text-size-18 {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
  }

  /* ── Mobile search + cart ── */
  .arshad-mobile-search,
  .arshad-mobile-search .form-control,
  .arshad-mobile-search .btn {
    font-family: 'diroz', Tahoma, Arial, sans-serif !important;
  }

  .arshad-mobile-search .form-control {
    height: 48px;
    border: 1px solid #bcbcbc !important;
    border-radius: 16px 0 0 16px !important;
    font-size: 12px !important;
    padding: 12px 16px;
    box-shadow: none !important;
  }

  .arshad-mobile-search .form-control::placeholder {
    color: #adb5bd;
  }

  .arshad-mobile-search .input-group-text,
  .arshad-mobile-search button.input-group-text {
    width: 48px;
    height: 48px;
    background-color: #fd7e14 !important;
    border: none !important;
    border-radius: 0 16px 16px 0 !important;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .arshad-mobile-search .order-btn-mobile {
    height: 48px !important;
    border: 1px solid #bcbcbc !important;
    border-radius: 16px !important;
    background: #fff !important;
  }

  .arshad-mobile-search .book-search-suggestions-panel {
    border-radius: 12px;
    box-shadow: 0 6px 20px rgba(33, 37, 41, 0.12);
  }

  .arshad-mobile-search .book-search-suggestions {
    max-height: 240px;
  }

  .arshad-mobile-search .book-search-suggestions-footer {
    display: none;
  }

  /* ── Hero slider ── */
  .homepage-r .container-fluid.row>.col-lg-9,
  .homepage-r .container-fluid.row>.col-lg-3 {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100%;
  }

  .homepage-r .container-fluid.row > .col-lg-9.col-12 {
    margin-top: 16px;
    margin-bottom: 20px;
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .homepage-r #mycarousel {
    display: flex;
    flex-direction: column;
  }

  .homepage-r #mycarousel .carousel-inner {
    order: 1;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
  }

  .homepage-r #mycarousel .carousel-item {
    background: #fff;
  }

  .homepage-r #mycarousel .carousel-item img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    display: block;
  }

  .homepage-r #mycarousel .carousel-indicators {
    order: 2;
    position: static;
    margin: 14px 0 4px;
    display: flex;
    justify-content: center;
    gap: 4px;
  }

  .homepage-r #mycarousel .carousel-indicators li {
    width: 8px;
    height: 8px;
    border-radius: 9px;
    background-color: rgba(108, 117, 125, 0.3) !important;
    border: none !important;
    opacity: 1;
    margin: 0;
  }

  .homepage-r #mycarousel .carousel-indicators li.active {
    width: 16px;
    background-color: #fd7e14 !important;
  }

  .homepage-r #mycarousel .carousel-control-prev,
  .homepage-r #mycarousel .carousel-control-next {
    width: 26px;
  }

  .homepage-r .homepage-disc-banner-mobile {
    background-color: #ea2e42;
    border-radius: 16px;
    height: 56px;
    overflow: hidden;
    margin-top: 16px;
    display: flex;
    align-items: center;
  }

  .homepage-r .homepage-disc-banner-mobile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ── Section header ── */
  .homepage-r .mobile-section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-direction: row;
    margin-bottom: 16px;
    padding: 0;
    gap: 8px;
  }

  .homepage-r .mobile-section-header .mobile-section-title {
    order: 1;
  }

  .homepage-r .mobile-section-header .mobile-see-all-btn {
    order: 2;
  }

  .homepage-r .mobile-section-title {
    position: relative;
    font-weight: 700;
    font-size: 16px !important;
    line-height: 1.4;
    color: #6c757d;
    padding-bottom: 10px;
    margin: 0;
    flex: 1;
    min-width: 0;
  }

  .homepage-r .mobile-section-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 80px;
    height: 3px;
    background: #fd7e14;
  }

  .homepage-r .mobile-section-title::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 80px;
    left: 0;
    height: 1px;
    background: #dee2e6;
  }

  .homepage-r .mobile-see-all-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 10px 16px;
    background: #fd7e14;
    color: #fff !important;
    border: none;
    border-radius: 16px;
    font-weight: 700;
    font-size: 16px !important;
    white-space: nowrap;
    flex-shrink: 0;
    box-shadow: 0 4px 2px rgba(253, 126, 20, 0.25);
    text-decoration: none !important;
  }

  .homepage-r .mobile-see-all-btn img {
    width: 18px;
    filter: brightness(0) invert(1);
  }

  /* ── Mobile book slider (1 card + prev/next) ── */
  .homepage-r .homepage-mobile-swiper {
    position: relative;
    width: 100%;
    padding: 0 36px;
    overflow: hidden;
  }

  .homepage-r .homepage-mobile-swiper .swiper-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    margin: 0 !important;
    align-items: stretch;
  }

  .homepage-r .homepage-mobile-swiper:not(.swiper-initialized) .swiper-slide ~ .swiper-slide {
    display: none;
  }

  .homepage-r .homepage-mobile-swiper .swiper-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto;
    display: flex;
    justify-content: center;
    box-sizing: border-box;
  }

  .homepage-r .homepage-mobile-swiper .swiper-slide > .card,
  .homepage-r .homepage-mobile-swiper .swiper-slide > .mobile-book-card,
  .homepage-r .homepage-mobile-swiper .swiper-slide .card {
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 340px;
  }

  .homepage-r .homepage-mobile-swiper .swiper-slide .card-image,
  .homepage-r .homepage-mobile-swiper .mobile-book-card img {
    flex: 0 0 140px;
    height: 140px !important;
    max-height: 140px !important;
    width: auto !important;
    max-width: 65% !important;
    margin: 10px auto 6px !important;
    padding: 0 !important;
    object-fit: contain;
    aspect-ratio: auto;
  }

  .homepage-r .homepage-mobile-swiper .card-body,
  .homepage-r .homepage-mobile-swiper .mobile-book-card .card-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 0 10px 12px !important;
  }

  .homepage-r .homepage-mobile-swiper .card-title-label,
  .homepage-r .homepage-mobile-swiper .mobile-book-card .card-title-label {
    flex: 0 0 auto;
    min-height: 42px;
    line-height: 1.5;
  }

  .homepage-r .homepage-mobile-swiper .mobile-book-card .price-box {
    flex: 0 0 auto;
  }

  .homepage-r .homepage-mobile-swiper .mobile-book-card .addToCart {
    margin-top: auto !important;
  }

  .homepage-r .homepage-slider-prev,
  .homepage-r .homepage-slider-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #fd7e14;
    box-shadow: 0 2px 6px rgba(253, 126, 20, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

  .homepage-r .homepage-slider-prev {
    right: 0;
  }

  .homepage-r .homepage-slider-next {
    left: 0;
  }

  .homepage-r .homepage-slider-prev img {
    width: 14px;
    filter: brightness(0) invert(1);
    transform: rotate(180deg);
  }

  .homepage-r .homepage-slider-next img {
    width: 14px;
    filter: brightness(0) invert(1);
  }

  .homepage-r .homepage-slider-prev.swiper-button-disabled,
  .homepage-r .homepage-slider-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
  }

  /* Discount swiper: show nav on mobile */
  .homepage-r .red-slider .swiper-button-next,
  .homepage-r .red-slider .swiper-button-prev {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 32px !important;
    height: 32px !important;
    top: 50% !important;
    margin-top: 0 !important;
    transform: translateY(-50%);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.9) !important;
    color: #fd7e14 !important;
  }

  .homepage-r .red-slider .swiper-button-prev {
    right: 4px !important;
    left: auto !important;
  }

  .homepage-r .red-slider .swiper-button-next {
    left: 4px !important;
    right: auto !important;
  }

  .homepage-r .red-slider .swiper-button-next::after,
  .homepage-r .red-slider .swiper-button-prev::after {
    font-size: 14px !important;
    font-weight: 700;
  }

  .homepage-r .red-slider .carousel-gradient {
    display: none !important;
  }

  /* ── Mobile book cards ── */
  .homepage-r .mobile-book-card {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
    border: none;
    overflow: hidden;
    min-width: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 340px;
  }

  .homepage-r .mobile-book-card img {
    flex: 0 0 140px;
    height: 140px;
    max-height: 140px;
    width: auto;
    max-width: 65%;
    margin: 10px auto 6px;
    object-fit: contain;
  }

  .homepage-r .mobile-book-card .card-body {
    padding: 0 10px 12px;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
  }

  .homepage-r .mobile-book-card .card-title-label {
    font-size: 14px !important;
    font-weight: 500;
    color: #6c757d;
    line-height: 1.5;
    min-height: 42px;
    display: block;
    flex: 0 0 auto;
  }

  .homepage-r .mobile-book-card .price-box {
    border-top: 1px solid #dee2e6;
    padding-top: 8px;
    margin-top: 4px;
  }

  .homepage-r .mobile-book-card .price-box .badge-danger {
    width: auto !important;
    min-width: 44px;
    border-radius: 14px !important;
    font-size: 13px !important;
    font-weight: 700;
    line-height: 1.2;
    padding: 6px 10px !important;
    flex-shrink: 0;
  }

  .homepage-r .mobile-book-card .addToCart {
    margin-top: auto !important;
  }

  .homepage-r .mobile-book-card .badge-danger {
    background-color: #ea2e42 !important;
    border-radius: 14px;
    font-size: 13px !important;
  }

  .homepage-r .mobile-book-card .text-warning {
    color: #fd7e14 !important;
    font-size: 16px !important;
    font-weight: 700;
  }

  .homepage-r .mobile-book-card .old-price {
    font-size: 13px !important;
    color: #6c757d;
  }

  /* ── All homepage cards ── */
  .homepage-r .card {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    border-radius: 20px !important;
    border: none !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
  }

  .homepage-r .card-image {
    flex: 0 0 140px;
    height: 140px !important;
    max-height: 140px !important;
    width: auto !important;
    max-width: 65% !important;
    margin: 10px auto 6px !important;
    padding: 0 !important;
    box-sizing: border-box;
    object-fit: contain;
    aspect-ratio: auto;
  }

  .homepage-r .card-body {
    padding: 8px 10px 12px !important;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
  }

  .homepage-r .card-title-label {
    font-size: 14px !important;
    min-height: 42px;
    line-height: 1.5;
    flex: 0 0 auto;
  }

  .homepage-r .red-slider .card-title-label {
    font-size: 14px !important;
    font-weight: 500 !important;
  }

  .homepage-r .red-slider .card-title.text-warning {
    font-size: 16px !important;
  }

  .homepage-r .red-slider .old-price {
    font-size: 13px !important;
  }

  .homepage-r .products-category-list-books .addToCart {
    display: none !important;
  }

  .homepage-r .homepage-mobile-swiper .addToCart,
  .homepage-r .mobile-book-card .addToCart,
  .homepage-r .red-slider .addToCart {
    display: block !important;
    flex: 0 0 auto;
    margin-top: 10px !important;
    font-size: 12px !important;
  }

  .homepage-r .red-slider .discount-offer-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 300px;
  }

  .homepage-r .red-slider .discount-offer-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 0 10px 12px !important;
  }

  .homepage-r .red-slider .discount-offer-price {
    margin-top: auto;
    border-color: #dee2e6 !important;
  }

  .homepage-r .red-slider .discount-offer-price .badge.bg-red {
    width: auto !important;
    min-width: 44px;
    border-radius: 14px !important;
    font-size: 13px !important;
    font-weight: 700;
    line-height: 1.2;
    padding: 6px 10px !important;
    flex-shrink: 0;
  }

  .homepage-r .red-slider .discount-offer-price .text-warning {
    font-size: 16px !important;
    font-weight: 700 !important;
  }

  .homepage-r .red-slider .swiper-slide {
    display: flex;
    height: auto;
    align-self: stretch;
  }

  .homepage-r .red-slider .swiper-slide > .card {
    width: 100%;
  }

  /* ── Shopping bar hidden on mobile ── */
  .homepage-r .homepage-shopping-bar-mobile-hide {
    display: none !important;
  }

  /* ── Discount section ── */
  .homepage-r .homepage-mobile-discount-section {
    background: #ea2f42;
    padding: 16px 12px 20px;
    margin: 0;
    position: relative;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
  }

  .homepage-r .homepage-mobile-discount-section__rain {
    position: absolute;
    top: -4px;
    right: 0;
    width: 110px;
    max-width: 38%;
    height: auto;
    pointer-events: none;
    z-index: 0;
  }

  .homepage-r .homepage-mobile-discount-section__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
    position: relative;
    z-index: 1;
  }

  .homepage-r .homepage-mobile-discount-section__heading {
    flex: 1 1 auto;
    min-width: 0;
    text-align: right;
  }

  .homepage-r .homepage-mobile-discount-section__title {
    margin: 0 0 6px;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
  }

  .homepage-r .homepage-mobile-discount-section__timer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    color: #fff;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
  }

  .homepage-r .homepage-mobile-discount-section__timer img {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
  }

  .homepage-r .homepage-mobile-discount-section__see-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-shrink: 0;
    margin-top: 2px;
    padding: 7px 14px;
    border: 1px solid #fff;
    border-radius: 999px;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: nowrap;
    background: transparent;
  }

  .homepage-r .homepage-mobile-discount-section__see-all img {
    width: 14px;
    height: 14px;
    filter: brightness(0) invert(1);
  }

  .homepage-r .homepage-mobile-discount-section__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    position: relative;
    z-index: 1;
  }

  .homepage-r .homepage-mobile-discount-card {
    border: none;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
  }

  .homepage-r .bg-red.overflow-hidden {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 16px 12px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    border-radius: 0;
  }

  .homepage-r .bg-red .rain-bg,
  .homepage-r .bg-red .w-35 {
    display: none !important;
  }

  .homepage-r .red-slider .carousel-gradient {
    display: none !important;
  }

  .homepage-r .bg-red .btn.border-white {
    border-radius: 16px !important;
    border: 1px solid #fff !important;
    background: transparent !important;
    font-weight: 700;
    font-size: 16px !important;
    padding: 8px 16px !important;
  }

  .homepage-r .bg-red .col-lg-3 {
    padding: 0 !important;
    margin-bottom: 12px;
  }

  .homepage-r .bg-red .col-lg-3 h3 {
    font-size: 16px !important;
    margin-bottom: 8px;
  }

  .homepage-r .red-slider {
    padding: 0 !important;
    max-width: 100%;
    overflow: hidden;
  }

  /* ── Popular ── */
  .homepage-r .best-sellers {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .homepage-r .best-sellers .best-sellers-title {
    display: none;
  }

  .homepage-r .best-sellers .best-sellers-mask {
    display: none !important;
  }

  /* ── Category sections — Figma 1068:3875 ── */
  .homepage-r .homepage-category-section {
    margin-left: -12px;
    margin-right: -12px;
    width: calc(100% + 24px);
    max-width: none;
  }

  .homepage-r section.mt-lg-5.homepage-category-section {
    padding: 0;
    margin-top: 20px !important;
  }

  .homepage-r .homepage-category-section .products-category-list {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    padding: 16px 12px 20px !important;
    border-radius: 0 !important;
    gap: 12px;
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .homepage-r .homepage-category-section-mobile {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .homepage-r .homepage-category-section-mobile__title-bar {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: auto !important;
    min-height: 48px;
    margin-top: 0 !important;
    padding: 12px 16px !important;
    border-radius: 20px !important;
    width: 100%;
    box-sizing: border-box;
    gap: 12px;
  }

  .homepage-r .homepage-category-section-mobile__title-bar.products-category-list-box {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 12px 16px !important;
  }

  .homepage-r .homepage-category-section-mobile__title-bar h2 {
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 0 !important;
    margin: 0 !important;
    white-space: normal;
    text-align: right;
    width: auto;
    flex: 1;
    min-width: 0;
    color: #fff !important;
    line-height: 1.5 !important;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.08);
  }

  .homepage-r .homepage-category-mobile-see-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-shrink: 0;
    padding: 7px 14px;
    border: 1px solid rgba(255, 255, 255, 0.9);
    border-radius: 999px;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    white-space: nowrap;
    background: transparent;
    box-shadow: none;
  }

  .homepage-r .homepage-category-mobile-see-all img {
    width: 14px;
    height: 14px;
    filter: brightness(0) invert(1);
  }

  .homepage-r .homepage-category-books-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
  }

  .homepage-r .homepage-category-strip-card {
    border: none;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
  }

  .homepage-r .homepage-category-section .products-category-list>div:last-child {
    display: none !important;
  }

  .homepage-r .products-category-list {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 12px !important;
    border-radius: 20px !important;
    gap: 12px;
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .homepage-r .products-category-list>div {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
  }

  .homepage-r .products-category-list>div:last-child {
    display: none !important;
  }

  .homepage-r .products-category-list-box {
    flex-direction: column !important;
    align-items: stretch !important;
    height: auto !important;
    margin-top: 0 !important;
    width: 100%;
    padding: 12px 12px 8px !important;
    border-radius: 16px !important;
    box-sizing: border-box;
  }

  .homepage-r .products-category-list-box h2 {
    font-size: 16px !important;
    font-weight: 700;
    padding: 0 0 10px !important;
    margin: 0 !important;
    white-space: normal;
    text-align: center;
  }

  .homepage-r .homepage-category-section-mobile__title-bar.products-category-list-box h2 {
    padding: 0 !important;
    text-align: right;
    color: #fff !important;
    width: auto;
    flex: 1;
  }

  /* ── Category tabs: horizontal scroll + arrows (mobile) ── */
  .homepage-r .homepage-category-tabs-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
  }

  .homepage-r .homepage-category-tabs-scroll {
    flex: 1;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    mask-image: linear-gradient(to left, transparent 0, #000 10px, #000 calc(100% - 10px), transparent 100%);
  }

  .homepage-r .homepage-category-tabs-scroll::-webkit-scrollbar {
    display: none;
  }

  .homepage-r .latest-book-category-list {
    display: flex !important;
    flex-direction: row !important;
    overflow: visible;
    gap: 8px;
    margin: 0 !important;
    padding: 2px 4px !important;
    width: max-content;
    min-width: 100%;
    max-width: none;
  }

  .homepage-r .latest-book-category-list li {
    border-radius: 16px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 10px 16px !important;
    flex-shrink: 0;
    white-space: nowrap;
    width: auto !important;
    clip-path: none !important;
    scroll-snap-align: center;
    background: rgba(255, 255, 255, 0.55) !important;
    color: #3d4f59 !important;
    border: 1px solid rgba(255, 255, 255, 0.7);
    transition: background 0.2s ease, color 0.2s ease;
  }

  .homepage-r .latest-book-category-list li.active {
    color: #fff !important;
    font-weight: 700 !important;
    border-color: transparent;
  }

  .homepage-r .products-category-list-box.green .latest-book-category-list li.active,
  .homepage-r .products-category-list.green .latest-book-category-list li.active {
    background: #48b248 !important;
  }

  .homepage-r .products-category-list-box.red .latest-book-category-list li.active,
  .homepage-r .products-category-list.red .latest-book-category-list li.active {
    background: #d95c36 !important;
  }

  .homepage-r .products-category-list-box.purple .latest-book-category-list li.active,
  .homepage-r .products-category-list.purple .latest-book-category-list li.active {
    background: #c366cc !important;
  }

  .homepage-r .products-category-list-box.blue .latest-book-category-list li.active,
  .homepage-r .products-category-list.blue .latest-book-category-list li.active {
    background: #5452cc !important;
  }

  .homepage-r .products-category-list-box:not(.green):not(.red):not(.purple):not(.blue) .latest-book-category-list li.active,
  .homepage-r .products-category-list:not(.green):not(.red):not(.purple):not(.blue) .latest-book-category-list li.active {
    background: #52a8cc !important;
  }

  .homepage-r .homepage-tab-prev,
  .homepage-r .homepage-tab-next {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

  .homepage-r .homepage-tab-prev img,
  .homepage-r .homepage-tab-next img {
    width: 10px;
    height: 10px;
    display: block;
    object-fit: contain;
    /* arrow PNG is white — tint orange for white circle buttons */
    filter: brightness(0) saturate(100%) invert(52%) sepia(98%) saturate(1200%) hue-rotate(360deg) brightness(103%) contrast(101%);
  }

  .homepage-r .homepage-tab-prev img {
    transform: rotate(180deg);
  }

  .homepage-r .homepage-tab-next img {
    transform: none;
  }

  .homepage-r .homepage-tab-prev:disabled,
  .homepage-r .homepage-tab-next:disabled {
    opacity: 0.35;
    cursor: default;
  }

  .homepage-r .products-category-list .row.flex-wrap {
    margin-top: 0 !important;
  }

  /* ── Banner grid 2×2 — Figma 1083:3652 ── */
  .homepage-r .homepage-colored-banners {
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-top: 20px !important;
  }

  .homepage-r .homepage-colored-banners .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 !important;
  }

  .homepage-r .homepage-colored-banners__item {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    flex: none !important;
  }

  .homepage-r .homepage-colored-banners__card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
  }

  .homepage-r .homepage-colored-banners__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 191 / 100;
    object-fit: cover;
  }

  .homepage-r .homepage-colored-banners__btn {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: none;
    border-radius: 16px;
    background: #fff;
    color: #464343;
    font-weight: 700;
    font-size: 14px !important;
    padding: 6px 12px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }

  .homepage-r .homepage-colored-banners__btn img {
    width: 12px;
    height: 12px;
  }

  .homepage-r .container-fluid.mt-4:not(.homepage-colored-banners) .row,
  .homepage-r .container-fluid.mt-lg-5:not(.homepage-colored-banners) .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0 !important;
  }

  .homepage-r .container-fluid.mt-4:not(.homepage-colored-banners) .row>[class*='col-'],
  .homepage-r .container-fluid.mt-lg-5:not(.homepage-colored-banners) .row>[class*='col-'] {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    flex: none !important;
  }

  .homepage-r .moshahede-on-pic {
    border-radius: 16px;
    font-weight: 700;
    font-size: 14px !important;
    padding: 6px 12px;
  }

  /* ── Full-width promo banners ── */
  .homepage-r .row.my-4,
  .homepage-r .row.my-md-5 {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 12px;
  }

  .homepage-r .row.my-4 .col-12,
  .homepage-r .row.my-md-5 .col-12 {
    padding: 0;
  }

  .homepage-r .row.my-4 img,
  .homepage-r .row.my-md-5 img {
    border-radius: 16px;
  }

  /* ── Figma 1068:3642 — horizontal book strip (جدیدترین‌ها / استخدامی) ── */
  .homepage-r .mobile-section-header--strip-only {
    justify-content: stretch;
    margin-bottom: 12px;
  }

  .homepage-r .mobile-section-header--strip-only .mobile-section-title {
    width: 100%;
    flex: 1 1 auto;
    text-align: right;
  }

  .homepage-r .mobile-section-header--strip-only .mobile-section-title::before {
    background: #dee2e6;
    height: 1px;
    right: 64px;
  }

  .homepage-r .mobile-section-header--strip-only .mobile-section-title::after {
    width: 64px;
    height: 2px;
  }

  .homepage-r .homepage-mobile-book-strip {
    overflow: hidden;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    position: relative;
  }

  .homepage-r .homepage-mobile-book-strip-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
  }

  .homepage-r .homepage-mobile-book-strip-item {
    min-width: 0;
  }

  .homepage-r .homepage-mobile-strip-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #fff;
    border: 1px solid #e9ecef;
    border-radius: 16px;
    box-shadow: none;
    text-decoration: none !important;
    color: inherit;
    overflow: hidden;
  }

  .homepage-r .homepage-mobile-strip-card__image {
    width: 100%;
    height: 118px;
    object-fit: contain;
    padding: 10px 12px 4px;
    box-sizing: border-box;
  }

  .homepage-r .homepage-mobile-strip-card__body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 0 10px 12px;
  }

  .homepage-r .homepage-mobile-strip-card__title {
    margin: 0 0 8px;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    color: #6c757d !important;
    text-align: right;
    min-height: 38px;
  }

  .homepage-r .homepage-mobile-strip-card__divider {
    height: 1px;
    background: #dee2e6;
    margin-bottom: 8px;
  }

  .homepage-r .homepage-mobile-strip-card__price-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 6px;
    margin-top: auto;
  }

  .homepage-r .homepage-mobile-strip-card__prices {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    min-width: 0;
    text-align: right;
  }

  .homepage-r .homepage-mobile-strip-card__price-line {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: flex-end;
    gap: 4px;
    max-width: 100%;
  }

  .homepage-r .homepage-mobile-strip-card__price {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #fd7e14 !important;
    white-space: nowrap;
  }

  .homepage-r .homepage-mobile-strip-card__currency {
    font-size: 10px !important;
    font-weight: 700 !important;
    white-space: nowrap;
    flex-shrink: 0;
  }

  .homepage-r .homepage-mobile-strip-card__old-price {
    font-size: 10px !important;
    font-weight: 400 !important;
    color: #adb5bd !important;
    text-decoration: line-through;
    line-height: 1.2;
    margin-top: 2px;
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .homepage-r .homepage-mobile-strip-card__badge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 26px;
    padding: 0 6px;
    border-radius: 14px;
    background: #ea2e42 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1;
  }

  .homepage-r .homepage-mobile-strip-peek {
    margin-top: 6px;
    height: 14px;
    overflow: hidden;
    position: relative;
    opacity: 0.35;
    pointer-events: none;
  }

  .homepage-r .homepage-mobile-strip-peek__card {
    background: #fff;
    border: 1px solid #e9ecef;
    border-radius: 16px 16px 0 0;
    height: 48px;
    overflow: hidden;
  }

  .homepage-r .homepage-mobile-strip-peek__card img {
    width: 100%;
    height: 80px;
    object-fit: contain;
    object-position: center top;
    opacity: 0.6;
    transform: translateY(-8px);
  }

  .homepage-r .homepage-mobile-strip-section {
    margin-bottom: 4px;
    padding-bottom: 4px;
  }

  /* legacy strip track (unused) — keep desktop safe */
  .homepage-r .homepage-mobile-book-strip-track {
    display: none;
  }

  .homepage-r .homepage-mobile-see-all-card {
    display: none;
  }
}

/* ── Desktop: equal-height book cards (homepage only) ── */
@media (min-width: 992px) {
  .homepage-r .bg-red .btn.border-white {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto;
    gap: 8px;
  }

  .homepage-r .best-sellers-see-all-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100%;
  }

  .homepage-r .best-sellers-see-all-card__blur {
    flex: 1 1 auto;
  }

  .homepage-r .best-sellers-see-all-card__overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    background: rgba(255, 255, 255, 0.35);
    backdrop-filter: blur(1px);
  }

  .homepage-r .best-sellers-see-all-card__btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 999px !important;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 4px 10px rgba(253, 126, 20, 0.25);
  }

  .homepage-r .best-sellers-see-all-card__btn img {
    width: 14px;
    height: 14px;
    filter: brightness(0) invert(1);
  }

  .homepage-r .products-category-list-books {
    padding-inline-start: 12px;
    box-sizing: border-box;
  }

  .homepage-r .products-category-list-books .row {
    align-items: stretch;
  }

  .homepage-r .products-category-list-books .row > [class*='col-'],
  .homepage-r .products-category-list-books .homepage-category-desktop-grid__item {
    display: flex;
  }

  .homepage-r .products-category-list-books .card.rounded {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  .homepage-r .products-category-list-books .card.rounded .card-image {
    flex: 0 0 150px;
    height: 150px;
    max-height: 150px;
    width: auto;
    max-width: calc(100% - 32px);
    margin: 16px auto 0;
    padding: 0 !important;
    object-fit: contain;
    aspect-ratio: auto;
  }

  .homepage-r .products-category-list-books .card.rounded .card-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 8px 12px 12px;
  }

  .homepage-r .products-category-list-books .card.rounded .card-title-label {
    flex: 0 0 auto;
    min-height: 2.8em;
    line-height: 1.4;
  }

  .homepage-r .products-category-list-books .card.rounded .price-box {
    flex: 0 0 auto;
    margin-top: auto;
  }

  .homepage-r .products-category-list-books .card.rounded .addToCart {
    flex: 0 0 auto;
    margin-top: 8px;
  }

  .homepage-r .homepage-category-desktop-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin-left: 0;
    margin-right: 0;
  }

  .homepage-r .homepage-category-desktop-grid__item {
    display: flex;
    min-width: 0;
  }

  .homepage-r .best-sellers .row.flex-nowrap {
    align-items: stretch;
  }

  .homepage-r .best-sellers .row.flex-nowrap > [class*='col-']:not(.best-sellers-mask) {
    display: flex;
  }

  .homepage-r .best-sellers .row.flex-nowrap .card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  .homepage-r .best-sellers .card-image {
    flex: 0 0 150px;
    height: 150px;
    max-height: 150px;
    width: auto;
    max-width: calc(100% - 32px);
    margin: 16px auto 0;
    padding: 0 !important;
    object-fit: contain;
    aspect-ratio: auto;
  }

  .homepage-r .best-sellers .card-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
  }

  .homepage-r .best-sellers .card-title-label {
    flex: 0 0 auto;
    min-height: 2.8em;
    line-height: 1.4;
  }

  .homepage-r .best-sellers .price-box {
    flex: 0 0 auto;
    margin-top: auto;
  }

  .homepage-r .best-sellers .addToCart {
    flex: 0 0 auto;
    margin-top: 8px;
  }
}

/* Homepage book carousels — all breakpoints */
.homepage-r .homepage-books-carousel {
  position: relative;
  width: 100%;
  padding: 0 36px;
  box-sizing: border-box;
}

.homepage-r .homepage-books-carousel__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 32px;
  height: 32px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: #fd7e14;
  box-shadow: 0 2px 6px rgba(253, 126, 20, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.homepage-r .homepage-books-carousel__prev {
  right: 0;
}

.homepage-r .homepage-books-carousel__next {
  left: 0;
}

.homepage-r .homepage-books-carousel__prev img {
  width: 14px;
  filter: brightness(0) invert(1);
  transform: rotate(180deg);
}

.homepage-r .homepage-books-carousel__next img {
  width: 14px;
  filter: brightness(0) invert(1);
}

.homepage-r .homepage-books-carousel__nav.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
}

.homepage-r .homepage-books-swiper {
  width: 100%;
  overflow: hidden;
}

.homepage-r .homepage-books-swiper .swiper-slide {
  height: auto;
  display: flex;
}

.homepage-r .homepage-books-swiper .swiper-slide > * {
  width: 100%;
  height: 100%;
}

.homepage-r .homepage-books-swiper .homepage-carousel-book-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.homepage-r .homepage-books-swiper .homepage-category-strip-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  border: none;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.homepage-r .homepage-books-swiper .homepage-carousel-book-card .card-image {
  flex: 0 0 150px;
  height: 150px;
  max-height: 150px;
  width: auto;
  max-width: calc(100% - 32px);
  margin: 16px auto 0;
  padding: 0 !important;
  object-fit: contain;
}

.homepage-r .homepage-books-swiper .homepage-carousel-book-card .card-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 8px 12px 12px;
}

.homepage-r .homepage-books-swiper .homepage-carousel-book-card .card-title-label {
  flex: 0 0 auto;
  min-height: 2.8em;
  line-height: 1.4;
}

.homepage-r .homepage-books-swiper .homepage-carousel-book-card .price-box {
  flex: 0 0 auto;
  margin-top: auto;
}

.homepage-r .homepage-books-swiper .homepage-carousel-book-card .addToCart {
  flex: 0 0 auto;
  margin-top: 8px;
}

.homepage-r .red-slider .homepage-books-carousel__nav {
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.homepage-r .red-slider .homepage-books-carousel__nav img {
  filter: none;
}

.homepage-r .products-category-list-books .homepage-books-carousel {
  padding-inline: 36px 36px;
}
