/* =============================================================
   THE TONER GROUP — Complete Mobile Redesign  (UPDATED v4)
   Affects ONLY screens ≤ 767px. Desktop = zero changes.
   Design Direction: Editorial Bold · Ink-Stained Utility Press
   Primary: #ea1b25 | Dark: #111 | Accent: #ff6b35 | Light: #f7f7f5

   v4 CHANGES:
   - Sticky header + search bar (with smooth shadow on scroll)
   - Trust badges: 2×3 grid (all visible, no scroll)
   - Search dropdown z-index fix (escapes content-section stacking context)
   ============================================================= */

@media (max-width: 767px) {

  /* ── CSS VARIABLES ─────────────────────────────────────── */
  :root {
    --m-red: #ea1b25;
    --m-dark: #111111;
    --m-mid: #2a2a2a;
    --m-accent: #ff6b35;
    --m-light: #f7f7f5;
    --m-border: #e8e8e8;
    --m-white: #ffffff;
    --m-radius: 12px;
    --m-radius-sm: 7px;
    --m-shadow: 0 4px 20px rgba(0, 0, 0, 0.10);
    --m-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.16);
    --m-sticky-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
  }

  /* ── GLOBAL RESET ──────────────────────────────────────── */
  body {
    font-size: 14px !important;
    background: #f7f7f5 !important;
    overflow-x: hidden !important;
  }

  .right-form {
    padding-inline: 0px;
    padding-bottom: 15px;
  }

  .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
    max-width: 100% !important;
  }

  p {
    font-size: 13px !important;
    line-height: 1.6 !important;
  }

  /* ══════════════════════════════════════════════════════════
     STICKY WRAPPER
     Wraps: #mob-cta-bar + header#header ONLY.
     Search bar stays in normal document flow — not sticky.
     No padding-top on body needed.
  ══════════════════════════════════════════════════════════ */
  #mob-sticky-wrapper {
    position: sticky !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1050 !important;
    background: var(--m-white) !important;
    /* Shadow added via JS class .scrolled — see mobile-redesign.js */
    transition: box-shadow 0.2s ease !important;
    overflow: visible !important;
  }

  #mob-sticky-wrapper.scrolled {
    box-shadow: var(--m-sticky-shadow) !important;
    border-bottom: 3px solid var(--m-red) !important;
  }

  /* ══════════════════════════════════════════════════════════
     HEADER CTA BAR
  ══════════════════════════════════════════════════════════ */
  #mob-cta-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    background: var(--m-white) !important;
    height: 38px !important;
    padding: 0 14px !important;
    position: relative !important;
    z-index: 1060 !important;
    border-bottom: 2px solid var(--m-red) !important;
  }

  .mob-cta-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #fff0f0 !important;
    border: 1.5px solid rgba(234, 27, 37, 0.18) !important;
    border-radius: 50px !important;
    padding: 5px 13px !important;
    color: #000;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: background 0.18s, border-color 0.18s !important;
    white-space: nowrap !important;
    letter-spacing: 0.1px !important;
  }

  .mob-cta-chip:active,
  .mob-cta-chip:hover {
    background: var(--m-red) !important;
    border-color: var(--m-red) !important;
    color: #fff !important;
  }

  .mob-cta-chip i {
    font-size: 11px !important;
    color: var(--m-red) !important;
    flex-shrink: 0 !important;
    transition: color 0.18s !important;
  }

  .mob-cta-chip:active i,
  .mob-cta-chip:hover i {
    color: #fff !important;
  }

  #mob-cta-bar .cta-dot {
    width: 4px !important;
    height: 4px !important;
    border-radius: 50% !important;
    background: var(--m-red) !important;
    flex-shrink: 0 !important;
  }

  /* ── HEADER ────────────────────────────────────────────── */
  header#header .u-header__section {
    background: var(--m-white) !important;
  }

  header#header .py-1.py-xl-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    border-bottom: none !important;
    background: var(--m-white) !important;
  }

  .u-header__navbar-brand,
  .u-header__navbar-brand>img {
    width: auto !important;
    height: 48px !important;
    object-fit: contain !important;
  }

  .col.col-xl-auto.text-right {
    padding-right: 4px !important;
  }

  header .fa.fa-shopping-cart {
    font-size: 20px !important;
  }

  .cart-count-badge.width-22.height-22 {
    width: 17px !important;
    height: 17px !important;
    font-size: 9px !important;
  }

  .account-item {
    padding: 0 6px !important;
  }

  header .far.fa-user {
    font-size: 18px !important;
  }

  .d-xl-none.py-2.border-bottom.bg-light {
    display: none !important;
  }

  .py-2.bg-white.border-bottom-rd.d-xl-none {
    display: none !important;
  }

  /* ══════════════════════════════════════════════════════════
     SEARCH BAR — Collapsed toggle pill design
     position: relative + z-index + overflow: visible
     ensures the dropdown paints above .content-section
  ══════════════════════════════════════════════════════════ */
  #mob-search-bar {
    padding: 0 !important;
    background: var(--m-white) !important;
    border-bottom: 3px solid var(--m-red) !important;
    position: relative !important;
    /* own stacking context */
    overflow: visible !important;
    /* dropdown escapes */
  }

  /* ── Collapsed toggle row ────────────────────────────────── */
  #mob-stab-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 12px !important;
    border-bottom: none !important;
  }

  #mob-stab-label {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #bbb !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }

  .mob-stab {
    flex-shrink: 0 !important;
    padding: 5px 12px !important;
    background: var(--m-light) !important;
    border: 1.5px solid var(--m-border) !important;
    border-radius: 50px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #777 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    transition: all 0.18s ease !important;
    white-space: nowrap !important;
    line-height: 1.3 !important;
  }

  .mob-stab i {
    font-size: 10px !important;
    color: #aaa !important;
    transition: color 0.18s !important;
  }

  .mob-stab.active {
    background: var(--m-dark) !important;
    border-color: var(--m-dark) !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18) !important;
  }

  .mob-stab.active i {
    color: var(--m-red) !important;
  }

  /* ── Expandable search input ──────────────────────────────── */
  #mob-search-expand-wrap {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.28s cubic-bezier(0.4, 0, 0.2, 1),
      opacity 0.22s ease,
      padding 0.22s ease !important;
    opacity: 0 !important;
    padding: 0 12px !important;
  }

  #mob-search-expand-wrap.open {
    max-height: 80px !important;
    opacity: 1 !important;
    padding: 0 12px 10px !important;
    overflow: visible !important;
    /* dropdown escapes clip */
  }

  #mob-search-pill-wrap {
    position: relative !important;
  }

  #mob-search-pill-wrap .mob-search-pill {
    display: flex !important;
    align-items: center !important;
    background: var(--m-light) !important;
    border: 1.5px solid var(--m-border) !important;
    border-radius: 50px !important;
    padding: 8px 14px !important;
    gap: 8px !important;
    transition: border-color 0.2s, box-shadow 0.2s !important;
  }

  #mob-search-pill-wrap .mob-search-pill:focus-within {
    border-color: var(--m-red) !important;
    box-shadow: 0 0 0 3px rgba(234, 27, 37, 0.10) !important;
  }

  #mob-search-pill-wrap .mob-search-pill input {
    flex: 1 !important;
    border: none !important;
    background: transparent !important;
    outline: none !important;
    font-size: 13px !important;
    color: var(--m-dark) !important;
    padding: 0 !important;
    min-width: 0 !important;
  }

  #mob-search-pill-wrap .mob-search-pill input::placeholder {
    color: #bbb !important;
    font-size: 12.5px !important;
  }

  .mob-search-go-btn {
    flex-shrink: 0 !important;
    width: 32px !important;
    height: 32px !important;
    background: var(--m-red) !important;
    border: none !important;
    border-radius: 50% !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    cursor: pointer !important;
    transition: background 0.18s, transform 0.12s !important;
  }

  .mob-search-go-btn:active {
    background: #c41520 !important;
    transform: scale(0.92) !important;
  }

  .mob-search-dropdown {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 4px) !important;
    left: 0 !important;
    right: 0 !important;
    background: #fff !important;
    border-radius: var(--m-radius-sm) !important;
    box-shadow: var(--m-shadow-lg) !important;
    z-index: 110000 !important;
    /* above everything incl. content-section stacking ctx */
    max-height: 280px !important;
    overflow-y: auto !important;
    border-top: 3px solid var(--m-red) !important;
  }

  .mob-search-dropdown.show {
    display: block !important;
  }

  .mob-sd-item {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 3px 14px !important;
    font-size: 13px !important;
    color: var(--m-dark) !important;
    text-decoration: none !important;
    border-bottom: 1px solid #f5f5f5 !important;
    transition: background 0.12s !important;
  }

  .mob-sd-item:active,
  .mob-sd-item:hover {
    background: #fff5f5 !important;
    color: var(--m-red) !important;
  }

  .mob-sd-item .mob-sd-icon {
    width: 28px !important;
    height: 28px !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .mob-sd-item .mob-sd-icon img {
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
    border-radius: 4px !important;
  }

  .mob-sd-item .mob-sd-icon i {
    color: var(--m-red) !important;
    font-size: 13px !important;
  }

  .mob-sd-loading {
    padding: 12px 14px !important;
    font-size: 12px !important;
    text-align: center !important;
  }

  /* ── HAMBURGER SIDEBAR ──────────────────────────────────── */
  #sidebarHeader1 .u-sidebar__container {
    background: var(--m-white) !important;
  }

  #sidebarHeader1 .u-sidebar__body {
    background: var(--m-white) !important;
  }

  #sidebarHeader1 .u-header-sidebar__content {
    padding: 0 !important;
  }

  #sidebarHeader1 .position-absolute.top-0 {
    top: 12px !important;
    right: 12px !important;
    padding: 0 !important;
    z-index: 10 !important;
  }

  #sidebarHeader1 .close {
    width: 34px !important;
    height: 34px !important;
    background: var(--m-red) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    position: relative !important;
  }

  #sidebarHeader1 .close .fa-xmark,
  #sidebarHeader1 .close i {
    color: #fff !important;
    font-size: 15px !important;
  }

  #mob-sb-logo {
    padding: 16px 18px 12px !important;
    border-bottom: 1px solid var(--m-border) !important;
    display: flex !important;
    align-items: center !important;
    min-height: 64px !important;
    margin-top: 35px;
  }

  #mob-sb-logo img {
    height: 44px !important;
    width: auto !important;
    object-fit: contain !important;
    max-width: 140px !important;
  }

  #mob-sb-logo span {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--m-dark) !important;
  }

  #mob-sidebar-search-tabs {
    display: flex !important;
    border-bottom: 2px solid var(--m-border) !important;
    margin-bottom: 0 !important;
  }

  .mob-sidebar-tab {
    flex: 1 !important;
    padding: 10px 6px !important;
    text-align: center !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #888 !important;
    border-bottom: 3px solid transparent !important;
    cursor: pointer !important;
    transition: color 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    margin-bottom: -2px !important;
  }

  .mob-sidebar-tab.active {
    color: var(--m-red) !important;
    border-bottom-color: var(--m-red) !important;
  }

  .mob-sidebar-tab i {
    font-size: 13px !important;
  }

  #mob-sidebar-search-wrap {
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--m-border) !important;
    position: relative !important;
  }

  #mob-sidebar-search-wrap .mob-sbar-input-row {
    display: flex !important;
    align-items: center !important;
    background: var(--m-light) !important;
    border: 1.5px solid var(--m-border) !important;
    border-radius: 50px !important;
    padding: 8px 14px !important;
    gap: 8px !important;
  }

  #mob-sidebar-search-wrap input {
    flex: 1 !important;
    border: none !important;
    background: transparent !important;
    outline: none !important;
    font-size: 13px !important;
    color: var(--m-dark) !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border-width: 0 !important;
    box-shadow: none !important;
  }

  #mob-sidebar-search-wrap .sbar-search-btn {
    width: 30px !important;
    height: 30px !important;
    background: var(--m-red) !important;
    border: none !important;
    border-radius: 50% !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    font-size: 12px !important;
    cursor: pointer !important;
  }

  #mob-sidebar-search-wrap .mob-sbar-results {
    position: absolute !important;
    top: calc(100% - 2px) !important;
    left: 14px !important;
    right: 14px !important;
    background: #fff !important;
    border-radius: 0 0 10px 10px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.14) !important;
    z-index: 9999 !important;
    border-top: 2px solid var(--m-red) !important;
    max-height: 220px !important;
    overflow-y: auto !important;
    display: none !important;
  }

  #mob-sidebar-search-wrap .mob-sbar-results.show {
    display: block !important;
  }

  #mob-sidebar-auth {
    display: flex !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--m-border) !important;
  }

  #mob-sidebar-auth a,
  #mob-sidebar-auth button {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 9px 6px !important;
    border-radius: 50px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-decoration: none !important;
    transition: all 0.2s !important;
  }

  #mob-sidebar-auth .mob-signin-btn {
    background: transparent !important;
    border: 1.5px solid var(--m-red) !important;
    color: var(--m-red) !important;
  }

  #mob-sidebar-auth .mob-register-btn {
    background: var(--m-red) !important;
    border: 1.5px solid var(--m-red) !important;
    color: #fff !important;
  }

  #headerSidebarList {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
  }

  #headerSidebarList .u-has-submenu {
    border-bottom: 1px solid var(--m-border) !important;
  }

  #headerSidebarList .u-header-collapse__nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--m-dark) !important;
    text-decoration: none !important;
    transition: background 0.15s !important;
  }

  #headerSidebarList .u-header-collapse__nav-link::after {
    content: '\f105' !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    color: #bbb !important;
    font-size: 14px !important;
  }

  #headerSidebarList .u-header-collapse__nav-link:active {
    background: var(--m-light) !important;
  }

  #headerSidebarList .u-header-collapse__submenu-nav-link {
    display: flex !important;
    align-items: center !important;
    padding: 10px 28px !important;
    font-size: 13.5px !important;
    color: #555 !important;
    text-decoration: none !important;
    border-bottom: 1px solid #f5f5f5 !important;
  }

  #headerSidebarList .u-header-collapse__submenu-nav-link:before {
    content: '›' !important;
    color: var(--m-red) !important;
    margin-right: 8px !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }

  #mob-sidebar-footer {
    border-top: 1px solid var(--m-border) !important;
    padding: 16px 18px !important;
    margin-top: auto !important;
    background: #fafafa !important;
  }

  .mob-sidebar-contact-row {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 10px !important;
    font-size: 13px !important;
    color: var(--m-mid) !important;
    text-decoration: none !important;
  }

  .mob-sidebar-contact-row:last-child {
    margin-bottom: 0 !important;
  }

  .mob-sidebar-contact-row .icon-chip {
    width: 28px !important;
    height: 28px !important;
    background: var(--m-red) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
  }

  .mob-sidebar-contact-row .icon-chip i {
    color: #fff !important;
    font-size: 11px !important;
  }

  /* ── MAIN CONTENT ────────────────────────────────────────── */
  main#content.mt-5 {
    margin-top: 0 !important;
  }

  main#content .container {
    padding-top: 0 !important;
    padding-inline: 0 !important;
  }

  .sidebar-section {
    display: none !important;
  }

  .main-content-wrapper {
    flex-direction: column !important;
    gap: 0 !important;
    margin-bottom: 0 !important;
  }

  .content-section.col-md-10 {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
  }

  .left-image {
    flex: 1;
    display: none;
  }

  /* ── HERO STRIP ─────────────────────────────────────────── */
  #mob-hero-strip {
    background: var(--m-dark) !important;
    padding: 18px 14px 16px !important;
    position: relative !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
    display: none !important;
  }

  #mob-hero-strip::after {
    content: '' !important;
    position: absolute !important;
    bottom: -20px !important;
    right: -20px !important;
    width: 120px !important;
    height: 120px !important;
    border-radius: 50% !important;
    background: rgba(234, 27, 37, 0.12) !important;
    pointer-events: none !important;
  }

  #mob-hero-strip h1 {
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #fff !important;
    line-height: 1.1 !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.3px !important;
    text-transform: uppercase !important;
  }

  #mob-hero-strip h1 span {
    color: var(--m-red) !important;
  }

  #mob-hero-strip p {
    font-size: 12.5px !important;
    color: #aaa !important;
    margin-bottom: 12px !important;
    line-height: 1.5 !important;
  }

  #mob-hero-strip .mob-hero-phone {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: var(--m-red) !important;
    color: #fff !important;
    border-radius: 50px !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: background 0.2s !important;
  }

  /* ── PRINTER CARTRIDGES CTA BUTTON ──────────────────────── */
  #mob-cartridges-cta {
    margin: 14px 14px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: linear-gradient(135deg, #ea1b25 0%, #c41520 55%, #ff6b35 100%) !important;
    border-radius: var(--m-radius) !important;
    padding: 14px 16px !important;
    cursor: pointer !important;
    border: none !important;
    width: calc(100% - 28px) !important;
    text-decoration: none !important;
    box-shadow: 0 4px 16px rgba(234, 27, 37, 0.30) !important;
    transition: transform 0.15s, box-shadow 0.15s !important;
    position: relative !important;
    overflow: hidden !important;
  }

  #mob-cartridges-cta::before {
    content: '' !important;
    position: absolute !important;
    top: -30% !important;
    right: -10% !important;
    width: 90px !important;
    height: 90px !important;
    background: rgba(255, 255, 255, 0.07) !important;
    border-radius: 50% !important;
  }

  #mob-cartridges-cta:active {
    transform: scale(0.98) !important;
  }

  #mob-cartridges-cta .cta-left {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    position: relative !important;
    z-index: 1 !important;
  }

  #mob-cartridges-cta .cta-icon {
    width: 40px !important;
    height: 40px !important;
    background: rgba(255, 255, 255, 0.18) !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    color: #fff !important;
  }

  #mob-cartridges-cta .cta-text {
    display: flex !important;
    flex-direction: column !important;
  }

  #mob-cartridges-cta .cta-text strong {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #fff !important;
    letter-spacing: 0.3px !important;
    text-transform: uppercase !important;
    display: block !important;
  }

  #mob-cartridges-cta .cta-text span {
    font-size: 11px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    display: block !important;
    margin-top: 1px !important;
  }

  #mob-cartridges-cta .cta-arrow {
    color: rgba(255, 255, 255, 0.8) !important;
    font-size: 18px !important;
    position: relative !important;
    z-index: 1 !important;
  }

  /* ── OFFCANVAS ───────────────────────────────────────────── */
  #mob-offcanvas-overlay {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    z-index: 100000 !important;
    backdrop-filter: blur(2px) !important;
  }

  #mob-offcanvas-overlay.active {
    display: block !important;
  }

  #mob-offcanvas {
    position: fixed !important;
    top: 0 !important;
    left: -105% !important;
    width: 84vw !important;
    max-width: 310px !important;
    height: 100dvh !important;
    background: var(--m-white) !important;
    z-index: 100001 !important;
    display: flex !important;
    flex-direction: column !important;
    transition: left 0.30s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    box-shadow: 6px 0 40px rgba(0, 0, 0, 0.2) !important;
  }

  #mob-offcanvas.open {
    left: 0 !important;
  }

  .mob-oc-header {
    background: var(--m-red) !important;
    padding: 16px 16px 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-shrink: 0 !important;
  }

  .mob-oc-title {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
  }

  .mob-oc-title i {
    font-size: 17px !important;
  }

  .mob-oc-close {
    width: 32px !important;
    height: 32px !important;
    background: rgba(255, 255, 255, 0.2) !important;
    border: none !important;
    border-radius: 50% !important;
    color: #fff !important;
    font-size: 15px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
  }

  .mob-oc-body {
    flex: 1 !important;
    overflow-y: auto !important;
    padding: 8px 0 !important;
  }

  .mob-oc-brand {
    border-bottom: 1px solid #f0f0f0 !important;
  }

  .mob-oc-brand-btn {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 18px !important;
    background: none !important;
    border: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--m-dark) !important;
    cursor: pointer !important;
    text-align: left !important;
    transition: background 0.15s !important;
  }

  .mob-oc-brand-btn:active,
  .mob-oc-brand.open .mob-oc-brand-btn {
    background: #fff5f5 !important;
    color: var(--m-red) !important;
  }

  .mob-oc-brand-btn .bname {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .mob-oc-brand-btn .bname i {
    color: var(--m-red) !important;
    font-size: 10px !important;
  }

  .mob-oc-chevron {
    font-size: 11px !important;
    color: #ccc !important;
    transition: transform 0.22s ease !important;
  }

  .mob-oc-brand.open .mob-oc-chevron {
    transform: rotate(90deg) !important;
    color: var(--m-red) !important;
  }

  .mob-oc-submenu {
    display: none !important;
    background: #fafafa !important;
    border-top: 1px solid #f0f0f0 !important;
  }

  .mob-oc-brand.open .mob-oc-submenu {
    display: block !important;
  }

  .mob-oc-submenu a {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 28px !important;
    font-size: 13px !important;
    color: #555 !important;
    text-decoration: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    transition: color 0.15s, background 0.15s !important;
  }

  .mob-oc-submenu a:hover,
  .mob-oc-submenu a:active {
    color: var(--m-red) !important;
    background: #fff5f5 !important;
  }

  .mob-oc-submenu a::before {
    content: '›' !important;
    color: var(--m-red) !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }

  .mob-oc-footer {
    padding: 14px 16px !important;
    border-top: 2px solid var(--m-border) !important;
    background: #fafafa !important;
    flex-shrink: 0 !important;
  }

  .mob-oc-footer a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: var(--m-dark) !important;
    color: #fff !important;
    border-radius: 50px !important;
    padding: 11px 20px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: background 0.2s !important;
  }

  .mob-oc-footer a:hover {
    background: var(--m-red) !important;
    color: #fff !important;
  }

  /* ── FINDER SECTION ─────────────────────────────────────── */
  #mob-finder-section {
    background: var(--m-white) !important;
    margin: 14px 14px 0 !important;
    border-radius: var(--m-radius) !important;
    overflow: hidden !important;
    box-shadow: var(--m-shadow) !important;
  }

  .mb-6 .d-flex.flex-column.flex-md-row {
    flex-direction: column !important;
  }

  .left-image img.custom {
    width: 100% !important;
    border-radius: 8px !important;
    height: auto !important;
  }

  /* ── PRINTER CARTRIDGES SECTION TITLE ── */
  #printer-cartridges .d-flex.justify-content-between,
  #printer-cartridges>.d-flex {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
  }

  #printer-cartridges .section-title,
  #printer-cartridges h2 {
    font-size: 18px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin: 0 !important;
    letter-spacing: 0.2px !important;
    line-height: 1.1 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  #printer-cartridges .brand-count {
    display: inline-flex !important;
    align-items: center !important;
    background: var(--m-red) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 8px !important;
    border-radius: 50px !important;
    letter-spacing: 0.3px !important;
    text-transform: none !important;
    vertical-align: middle !important;
    line-height: 1.6 !important;
  }

  #printer-cartridges .btn-primary-dark,
  #printer-cartridges a.view-all-link {
    font-size: 12px !important;
    padding: 7px 14px !important;
    border-radius: 50px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
  }

  #printer-cartridges .pc-hidden {
    opacity: 0 !important;
    transform: translateY(18px) !important;
    transition: opacity 0.4s ease, transform 0.4s ease !important;
  }

  #printer-cartridges .pc-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }

  /* ── WHY CHOOSE THE TONER GROUP ── */
  .mb-5.mt-5 {
    background: var(--m-white) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: var(--m-shadow) !important;
    margin: 14px !important;
    padding: 14px !important;
    overflow: hidden !important;
  }

  .mb-5.mt-5 .d-flex.justify-content-between.align-items-center.mb-4 {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid var(--m-border) !important;
  }

  .mb-5.mt-5 h2.section-title {
    font-size: 18px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
    letter-spacing: 0.2px !important;
    line-height: 1.1 !important;
    border-bottom: none !important;
  }

  .mb-5.mt-5 button.btn.btn-link {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--m-dark) !important;
    background: var(--m-light) !important;
    border: 1.5px solid var(--m-border) !important;
    border-radius: 50px !important;
    padding: 7px 14px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    transition: background 0.2s, border-color 0.2s, color 0.2s !important;
    box-shadow: none !important;
  }

  .mb-5.mt-5 button.btn.btn-link:hover,
  .mb-5.mt-5 button.btn.btn-link[aria-expanded="true"] {
    background: var(--m-red) !important;
    border-color: var(--m-red) !important;
    color: #fff !important;
  }

  .mb-5.mt-5 button.btn.btn-link i#aboutToggleIcon {
    font-size: 10px !important;
    transition: transform 0.25s !important;
  }

  .mb-5.mt-5 button.btn.btn-link[aria-expanded="true"] i#aboutToggleIcon {
    transform: rotate(180deg) !important;
  }

  .mb-5.mt-5>.mt-4>p.text-black {
    font-size: 13px !important;
    color: #555 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
  }

  #aboutContentCollapse {
    margin-top: 10px !important;
  }

  #aboutContentCollapse .row {
    margin: 0 !important;
  }

  #aboutContentCollapse .col-lg-12 {
    padding: 0 !important;
  }

  #aboutContentCollapse p {
    font-size: 13px !important;
    color: #444 !important;
    line-height: 1.65 !important;
    margin-bottom: 10px !important;
  }

  #aboutContentCollapse h3.font-size-20 {
    font-size: 15px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    letter-spacing: 0.2px !important;
    line-height: 1.2 !important;
    margin-top: 16px !important;
    margin-bottom: 6px !important;
    padding-top: 14px !important;
    border-top: 1px solid var(--m-border) !important;
  }

  #aboutContentCollapse h3.font-size-20:first-of-type {
    border-top: none !important;
    padding-top: 0 !important;
    margin-top: 8px !important;
  }

  #aboutContentCollapse .list-unstyled {
    padding-left: 0 !important;
    margin-bottom: 10px !important;
  }

  #aboutContentCollapse .list-unstyled li {
    font-size: 13px !important;
    color: #444 !important;
    line-height: 1.55 !important;
    padding: 4px 0 !important;
    align-items: flex-start !important;
    gap: 6px !important;
  }

  .mobile-row {
    padding: 14px !important;
  }

  #aboutContentCollapse .list-unstyled li i.fa-check {
    color: var(--m-red) !important;
    font-size: 11px !important;
    margin-top: 3px !important;
    flex-shrink: 0 !important;
  }

  #aboutContentCollapse a {
    color: var(--m-red) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    word-break: break-all !important;
  }

  /* ── FAQ SECTION ─────────────────────────────────────────── */

  button.faq-preview-toggle {
    font-size: 13.5px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .product-name {
    font-size: 18px;
  }

  .d-flex.justify-content-between.mb-5 {
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
    align-items: center !important;
  }

  .d-flex.justify-content-between.mb-5 h2 {
    font-size: 18px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
  }

  .d-flex.justify-content-between.mb-5 .btn-primary-dark {
    font-size: 12px !important;
    padding: 7px 14px !important;
  }

  #faqPreviewAccordion .card-body p {
    font-size: 13px !important;
  }

  /* ══════════════════════════════════════════════════════════
     TRUST BADGES — 2×3 grid, all visible on screen
     No scroll. Icon beside label (row layout).
  ══════════════════════════════════════════════════════════ */
  #mob-trust-strip {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    padding: 14px !important;
  }

  .mob-trust-card {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: var(--m-white) !important;
    border-radius: 10px !important;
    padding: 12px 12px !important;
    box-shadow: var(--m-shadow) !important;
  }

  .mob-trust-card .trust-icon {
    width: 36px !important;
    height: 36px !important;
    flex-shrink: 0 !important;
    background: #fff0f0 !important;
    border-radius: 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 15px !important;
    color: var(--m-red) !important;
  }

  .mob-trust-card span {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: var(--m-dark) !important;
    line-height: 1.35 !important;
  }

  /* ══════════════════════════════════════════════════════════
     FOOTER — WHITE BACKGROUND REDESIGN
  ══════════════════════════════════════════════════════════ */
  footer {
    background: #fff !important;
  }

  footer .bg-primary.py-3 {
    display: none !important;
  }

  footer .pt-5.pb-0.bg-gray-13 {
    background: #fff !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  footer .pt-5.pb-0.bg-gray-13 .container {
    padding: 0 !important;
  }

  footer .pt-5.pb-0.bg-gray-13 .row {
    margin: 0 !important;
  }

  #mob-footer-brand-card {
    background: #fff !important;
    padding: 20px 0px 20px !important;
    text-align: center !important;
    border-bottom: 1px solid var(--m-border) !important;
    border-top: 10px solid var(--m-red) !important;
  }

  #mob-footer-brand-card img {
    height: 60px !important;
    width: auto !important;
    margin-bottom: 12px !important;
    opacity: 1 !important;
    filter: none !important;
  }

  #mob-footer-brand-card .mob-footer-tagline {
    font-size: 12.5px !important;
    color: #666 !important;
    line-height: 1.55 !important;
    max-width: 280px !important;
    margin: 0 auto 16px !important;
  }

  #mob-footer-contacts {
    display: flex !important;
    gap: 8px !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
  }

  div#mCSB_2_container {
    margin-top: 90px;
  }

  .mob-footer-contact-chip {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #fff0f0 !important;
    border: 1.5px solid rgba(234, 27, 37, 0.18) !important;
    border-radius: 50px !important;
    padding: 7px 14px !important;
    color: var(--m-dark) !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: background 0.2s, border-color 0.2s !important;
  }

  .mob-footer-contact-chip:active,
  .mob-footer-contact-chip:hover {
    background: var(--m-red) !important;
    border-color: var(--m-red) !important;
    color: #fff !important;
  }

  .mob-footer-contact-chip i {
    color: var(--m-red) !important;
    font-size: 12px !important;
    transition: color 0.2s !important;
  }

  .mob-footer-contact-chip:active i,
  .mob-footer-contact-chip:hover i {
    color: #fff !important;
  }

  #mob-footer-links {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    border-top: 1px solid var(--m-border) !important;
    border-bottom: 1px solid var(--m-border) !important;
    background: #fff !important;
  }

  .mob-footer-col {
    padding: 10px 15px !important;
  }

  .mob-footer-col:first-child {
    border-right: 1px solid var(--m-border) !important;
  }

  .mob-footer-col h6 {
    font-size: 11px !important;
    font-weight: 800 !important;
    color: var(--m-red) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin-bottom: 12px !important;
  }

  .mob-footer-col ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .mob-footer-col li {
    margin-bottom: 8px !important;
  }

  .mob-footer-col li a {
    font-size: 13px !important;
    color: #555 !important;
    text-decoration: none !important;
    transition: color 0.15s !important;
    line-height: 1.4 !important;
    display: block !important;
  }

  .mob-footer-col li a:hover {
    color: var(--m-red) !important;
  }

  #mob-footer-partners {
    padding: 10px 15px !important;
    background: #fff !important;
    border-bottom: 1px solid var(--m-border) !important;
  }

  #mob-footer-partners h6 {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--m-red) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin-bottom: 12px !important;
  }

  #mob-footer-partners .partner-logos {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    margin-bottom: 16px !important;
  }

  #mob-footer-partners .partner-logos img {
    height: 26px !important;
    width: auto !important;
    filter: none !important;
    transition: opacity 0.2s !important;
  }

  #mob-footer-partners .payment-logos {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
  }

  #mob-footer-partners .payment-logos img {
    height: 20px !important;
    filter: none !important;
  }

  #mob-footer-disclaimer {
    padding: 14px 16px !important;
    background: #f9f9f9 !important;
    border-top: 1px solid var(--m-border) !important;
  }

  #mob-footer-disclaimer p {
    font-size: 10.5px !important;
    line-height: 1.6 !important;
    margin: 0 0 6px !important;
    text-align: left !important;
  }

  #mob-footer-disclaimer p:last-child {
    margin-bottom: 0 !important;
  }

  #mob-footer-disclaimer a {
    color: var(--m-red) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
  }

  footer .bg-gray-14.py-2 {
    background: #f0f0f0 !important;
    padding: 12px 14px !important;
    text-align: center !important;
    border-top: 1px solid var(--m-border) !important;
  }

  footer .bg-gray-14.py-2 .flex-center-between {
    display: block !important;
    text-align: center !important;
  }

  footer .bg-gray-14.py-2 .small,
  footer .bg-gray-14.py-2 .mb-3 {
    font-size: 10.5px !important;
    color: #888 !important;
    line-height: 1.5 !important;
    display: block !important;
    margin-bottom: 4px !important;
  }

  footer .bg-gray-14.py-2 a {
    color: var(--m-red) !important;
    font-weight: 700 !important;
  }

  footer .col-lg-4,
  footer .col-lg-8,
  footer .col-12.col-md {
    display: none !important;
  }

  /* ── FLOATING ELEMENTS ───────────────────────────────────── */
  .floating-finder-btn {
    width: 44px !important;
    height: 44px !important;
    bottom: 16px !important;
    right: 16px !important;
  }

  .floating-finder-btn i {
    font-size: 18px !important;
  }

  .u-go-to {
    right: 70px !important;
    bottom: 16px !important;
  }

  .cart-dropdown-menu {
    width: 92vw !important;
    max-width: 360px !important;
  }

  .js-form-message.mb-5 {
    margin-bottom: 15px !important;
  }

  .mb-6 {
    margin-bottom: 0 !important;
  }

  /* ── BRAND PAGE — HERO SECTION ── */
  .hero-section {
    background: var(--m-white) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: var(--m-shadow) !important;
    margin: 14px !important;
    padding: 14px !important;
    overflow: hidden !important;
  }

  .hero-section>.container {
    padding: 14px !important;
  }

  .hero-section h1.section-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid var(--m-border) !important;
    letter-spacing: 0.2px !important;
    line-height: 1.1 !important;
  }

  .hero-section .row.mb-4 {
    margin: 0 !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  .hero-section .row.mb-4 .col-md-3,
  .hero-section .row.mb-4 .col-md-9 {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
  }

  .hero-section .col-md-3 img.img-fluid {
    width: auto !important;
    max-width: 140px !important;
    height: 70px !important;
    object-fit: contain !important;
    border-radius: 8px !important;
    display: block !important;
    margin: 0 !important;
  }

  .hero-section .seo-description-content,
  .hero-section .text-justify {
    font-size: 13px !important;
    color: #444 !important;
    line-height: 1.65 !important;
  }

  .hero-section .lead {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #555 !important;
  }

  .hero-section .form-group label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: var(--m-dark) !important;
    margin-bottom: 4px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
  }

  .hero-section .form-control {
    font-size: 13px !important;
    border-radius: 8px !important;
    border-color: var(--m-border) !important;
    padding: 8px 10px !important;
  }

  .hero-section .form-control:focus {
    border-color: var(--m-red) !important;
    box-shadow: 0 0 0 3px rgba(234, 27, 37, 0.10) !important;
  }

  .hero-section small.form-text {
    font-size: 11px !important;
  }

  .hero-section #save-brand-seo {
    border-radius: 50px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 9px 24px !important;
    background: var(--m-red) !important;
    border-color: var(--m-red) !important;
    color: #fff !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
  }

  .hero-section hr {
    border-color: var(--m-border) !important;
    margin: 12px 0 !important;
  }

  #validation-message {
    font-size: 12px !important;
    border-radius: 8px !important;
  }

  /* ── BRAND PAGE — CONSUMABLES SECTION ── */
  .consumables-section {
    background: var(--m-white) !important;
    border-radius: var(--m-radius) !important;
    box-shadow: var(--m-shadow) !important;
    margin: 14px !important;
    padding: 14px !important;
    overflow: hidden !important;
  }

  .consumables-section>.container {
    padding: 14px !important;
  }

  .consumables-section h2.section-title {
    font-size: 18px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid var(--m-border) !important;
    letter-spacing: 0.2px !important;
    line-height: 1.1 !important;
  }

  #consumables-grid .spinner-border {
    color: var(--m-red) !important;
    width: 2rem !important;
    height: 2rem !important;
  }

  #consumables-grid.row {
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  #consumables-grid .col-md-6.col-lg-4 {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
  }

  #consumables-grid .col-12 {
    width: 100% !important;
    padding: 0 !important;
  }

  #consumables-grid .card {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid var(--m-border) !important;
    background: transparent !important;
    overflow: visible !important;
    cursor: default !important;
    transition: none !important;
  }

  #consumables-grid .card:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  #consumables-grid .col-md-6.col-lg-4:first-child .card {
    border-top: 1px solid var(--m-border) !important;
  }

  #consumables-grid .card-img-top {
    display: none !important;
  }

  #consumables-grid .card-body {
    padding: 0 !important;
    display: block !important;
  }

  #consumables-grid .card-body>*:not(.cg-ticket):not(.cg-panel) {
    display: none !important;
  }

  .cg-ticket {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 13px 0 !important;
    cursor: pointer !important;
    user-select: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .cg-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 12px !important;
    background: #fff0f0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    font-size: 19px !important;
    color: var(--m-red) !important;
    border: 1.5px solid rgba(234, 27, 37, 0.14) !important;
    transition: background 0.22s, color 0.22s, border-color 0.22s !important;
  }

  .cg-ticket.open .cg-icon {
    background: var(--m-red) !important;
    color: #fff !important;
    border-color: var(--m-red) !important;
  }

  .cg-info {
    flex: 1 !important;
    min-width: 0 !important;
  }

  .cg-name {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--m-dark) !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    margin-bottom: 4px !important;
  }

  .cg-meta {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
  }

  .cg-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    background: var(--m-light) !important;
    border: 1px solid var(--m-border) !important;
    border-radius: 50px !important;
    padding: 2px 8px !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    color: #666 !important;
  }

  .cg-badge i {
    font-size: 9px !important;
    color: var(--m-red) !important;
  }

  .cg-chevron {
    flex-shrink: 0 !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: var(--m-light) !important;
    border: 1px solid var(--m-border) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 10px !important;
    color: #aaa !important;
    transition: transform 0.25s ease, background 0.22s, color 0.22s !important;
  }

  .cg-ticket.open .cg-chevron {
    transform: rotate(180deg) !important;
    background: var(--m-red) !important;
    border-color: var(--m-red) !important;
    color: #fff !important;
  }

  .cg-panel {
    display: none !important;
    padding: 0 0 14px 56px !important;
  }

  .cg-panel.open {
    display: block !important;
    animation: cgFadeIn 0.2s ease !important;
  }

  @keyframes cgFadeIn {
    from {
      opacity: 0;
      transform: translateY(-4px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .cg-models {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-bottom: 12px !important;
  }

  .cg-model-chip {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 5px 11px 5px 8px !important;
    background: #f9f9f9 !important;
    border: 0.5px solid #ddd !important;
    border-left: 3px solid #ddd !important;
    border-radius: 4px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #555 !important;
    letter-spacing: 0.035em !important;
    text-decoration: none !important;
    cursor: pointer !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    transition: border-color 0.18s ease, color 0.18s ease,
      background 0.18s ease, box-shadow 0.18s ease !important;
  }

  .cg-model-chip::before {
    content: '' !important;
    width: 4px !important;
    height: 4px !important;
    border-radius: 50% !important;
    background: #ccc !important;
    flex-shrink: 0 !important;
    transition: background 0.18s ease !important;
  }

  .cg-model-chip:active {
    border-left-color: #dc3545 !important;
    border-color: rgba(220, 53, 69, 0.3) !important;
    color: #111 !important;
    background: #fff !important;
    box-shadow: 0 2px 6px rgba(220, 53, 69, 0.12) !important;
  }

  .cg-model-chip:active::before {
    background: #dc3545 !important;
  }

  .cg-model-chip.cg-hidden {
    display: none !important;
  }

  .cg-show-more {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    background: transparent !important;
    border: 1.5px dashed var(--m-red) !important;
    border-radius: 6px !important;
    padding: 5px 10px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--m-red) !important;
    cursor: pointer !important;
    transition: background 0.15s, color 0.15s !important;
    line-height: 1 !important;
  }

  .cg-show-more:active {
    background: var(--m-red) !important;
    color: #fff !important;
    border-style: solid !important;
  }

  .cg-view-all {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: var(--m-red) !important;
    color: #fff !important;
    border-radius: 50px !important;
    padding: 9px 18px !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: background 0.18s !important;
  }

  .cg-view-all:active {
    background: #c41520 !important;
    color: #fff !important;
  }

  .cg-view-all i {
    font-size: 10px !important;
  }

  /* ── BREADCRUMB ─────────────────────────────────────────── */
  .my-md-3 {
    margin-top: 8px !important;
    margin-bottom: 0 !important;
  }

  .breadcrumb {
    font-size: 11.5px !important;
    background: transparent !important;
    padding: 8px 14px !important;
    margin-bottom: 0 !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
  }

  .breadcrumb-item+.breadcrumb-item::before {
    font-size: 11px !important;
    color: #bbb !important;
  }

  .breadcrumb-item a {
    color: var(--m-red) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
  }

  .breadcrumb-item.active {
    color: #888 !important;
  }

  /* ── SERIES PAGE ─────────────────────────────────────────── */
  section.search-section.mt-3 {
    margin: 14px !important;
  }

  .hero-section .section-title {
    font-size: 16px !important;
    padding-bottom: 10px !important;
    margin-bottom: 14px !important;
    border-bottom: 2px solid #eee !important;
    font-weight: 800 !important;
    letter-spacing: -0.2px !important;
  }

  .hero-section .section-title .model-count-pill {
    font-size: 11px !important;
    font-weight: 700 !important;
    background: #ea1b25 !important;
    color: white !important;
    padding: 3px 9px !important;
    border-radius: 20px !important;
    margin-left: 8px !important;
    vertical-align: middle !important;
  }

  .series-card {
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06) !important;
    margin: 0 14px 16px !important;
    padding: 14px 14px 10px !important;
    overflow: hidden !important;
  }

  .series-card .series-title {
    font-size: 14px !important;
    font-weight: 800 !important;
    margin: 0 0 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 1.5px solid #f0f0f0 !important;
    letter-spacing: -0.1px !important;
  }

  .model-list,
  .models-container {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 4px 0 10px !important;
  }

  .model-item,
  .model-btn,
  a.badge[href*="/"] {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 5px 11px 5px 8px !important;
    background: #f9f9f9 !important;
    border: 0.5px solid #ddd !important;
    border-left: 3px solid #ddd !important;
    border-radius: 4px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #555 !important;
    letter-spacing: 0.035em !important;
    text-decoration: none !important;
    cursor: pointer !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    transition: border-color 0.18s ease, color 0.18s ease,
      background 0.18s ease, box-shadow 0.18s ease !important;
  }

  .model-item::before,
  .model-btn::before,
  a.badge[href*="/"]::before {
    content: '' !important;
    width: 4px !important;
    height: 4px !important;
    border-radius: 50% !important;
    background: #ccc !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
    transition: background 0.18s ease !important;
  }

  .model-item.mob-model-hidden,
  .model-btn.mob-model-hidden {
    display: none !important;
  }

  #mob-models-view-more,
  .mob-models-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    margin: 10px 0 4px !important;
    padding: 9px 16px !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #ea1b25 !important;
    background: transparent !important;
    border: 1.5px dashed #ea1b25 !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: all 0.16s ease !important;
  }

  #mob-models-view-more:active,
  .mob-models-toggle:active {
    background: #ea1b25 !important;
    color: white !important;
    border-style: solid !important;
  }

  #mob-models-view-more i,
  .mob-models-toggle i {
    font-size: 10px !important;
    transition: transform 0.22s ease !important;
  }

  #mob-models-view-more.expanded i,
  .mob-models-toggle.expanded i {
    transform: rotate(180deg) !important;
  }

  #quill-editor {
    min-height: 140px !important;
    font-size: 13.5px !important;
  }

  #quill-editor .ql-toolbar {
    padding: 6px 8px !important;
  }

  .form-control,
  textarea.form-control {
    font-size: 13.5px !important;
    padding: 9px 12px !important;
  }

  small.form-text {
    font-size: 11px !important;
  }

  .btn#save-all-seo {
    font-size: 13px !important;
    padding: 10px 24px !important;
    border-radius: 50px !important;
  }

  .hero-section h2.section-title {
    font-size: 16px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid var(--m-border) !important;
    letter-spacing: 0.2px !important;
    line-height: 1.1 !important;
  }

  .hero-section h3.section-title {
    font-size: 16px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin-bottom: 10px !important;
    padding-bottom: 8px !important;
    border-bottom: 2px solid var(--m-border) !important;
    letter-spacing: 0.2px !important;
    line-height: 1.1 !important;
  }

  #models-list-container {
    margin-bottom: 20px !important;
  }

  .models-container {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    padding: 4px 0 12px !important;
    overflow-x: visible !important;
  }

  .model-btn,
  .model-chip {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 5px 11px 5px 8px !important;
    background: #f9f9f9 !important;
    border: 0.5px solid #ddd !important;
    border-left: 3px solid #ddd !important;
    border-radius: 4px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #555 !important;
    letter-spacing: 0.035em !important;
    text-decoration: none !important;
    cursor: pointer !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    transition: border-color 0.18s ease, color 0.18s ease,
      background 0.18s ease, box-shadow 0.18s ease !important;
  }

  .model-btn::before,
  .model-chip::before {
    content: '' !important;
    width: 4px !important;
    height: 4px !important;
    border-radius: 50% !important;
    background: #ccc !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
    transition: background 0.18s ease !important;
  }

  .model-btn:hover,
  .model-btn.active,
  .model-chip:hover,
  .model-chip.active {
    border-left-color: #dc3545 !important;
    border-color: rgba(220, 53, 69, 0.3) !important;
    color: #111 !important;
    background: #fff !important;
    transform: none !important;
    box-shadow: 0 2px 6px rgba(220, 53, 69, 0.12) !important;
  }

  .model-btn:hover::before,
  .model-btn.active::before,
  .model-chip:hover::before,
  .model-chip.active::before {
    background: #dc3545 !important;
  }

  .model-btn.active,
  .model-chip.active {
    color: #dc3545 !important;
    background: #fff8f8 !important;
    font-weight: 700 !important;
  }

  .model-btn:active,
  .model-chip:active {
    border-left-color: #dc3545 !important;
    background: #fff8f8 !important;
    color: #dc3545 !important;
  }

  .model-btn.mob-model-hidden,
  .model-chip.mob-model-hidden {
    display: none !important;
  }

  #mob-models-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: transparent !important;
    border: 1.5px dashed var(--m-red) !important;
    border-radius: 7px !important;
    padding: 7px 13px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: var(--m-red) !important;
    cursor: pointer !important;
    transition: background 0.15s, color 0.15s, border-style 0.15s !important;
    line-height: 1 !important;
    width: 100% !important;
    justify-content: center !important;
    margin-top: 6px !important;
  }

  #mob-models-toggle:active {
    background: var(--m-red) !important;
    color: #fff !important;
    border-style: solid !important;
  }

  #mob-models-toggle i {
    font-size: 10px !important;
    transition: transform 0.22s ease !important;
  }

  #mob-models-toggle.expanded i {
    transform: rotate(180deg) !important;
  }

  .mob-model-count-badge {
    display: inline-flex !important;
    align-items: center !important;
    background: var(--m-red) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 8px !important;
    border-radius: 50px !important;
    letter-spacing: 0.3px !important;
    text-transform: none !important;
    vertical-align: middle !important;
    line-height: 1.6 !important;
    margin-left: 6px !important;
  }

  #models-list-container .spinner-border {
    color: var(--m-red) !important;
    width: 2rem !important;
    height: 2rem !important;
  }

  #save-series-all-seo {
    border-radius: 50px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 9px 24px !important;
    background: var(--m-red) !important;
    border-color: var(--m-red) !important;
    color: #fff !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
  }

  #series-seo-status {
    font-size: 12px !important;
    border-radius: 8px !important;
  }

  #series-quill-editor {
    height: 160px !important;
    font-size: 13px !important;
  }

  .ql-toolbar.ql-snow {
    padding: 6px 8px !important;
    border-radius: 8px 8px 0 0 !important;
  }

  .ql-container.ql-snow {
    border-radius: 0 0 8px 8px !important;
    font-size: 13px !important;
  }

  .series-seo-description-content {
    font-size: 13px !important;
    color: #444 !important;
    line-height: 1.65 !important;
  }

  .series-seo-description-content p {
    font-size: 13px !important;
    margin-bottom: 8px !important;
  }

  .series-seo-description-content h2,
  .series-seo-description-content h3 {
    font-size: 15px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: var(--m-dark) !important;
    margin: 14px 0 6px !important;
  }

  .series-seo-description-content a {
    color: var(--m-red) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
  }

  .img-fluid {
    max-width: 100%;
    height: 80px;
  }

  /* ══════════════════════════════════════════════════════════
     PRODUCT LIST — Inline cart row (no drawer, no expand)
     Each row: [img] [title + price + stock] [qty + btn]
  ══════════════════════════════════════════════════════════ */

  ul.products-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  ul.products-group li.product-item {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    border-bottom: 1px solid #e8e8e8 !important;
    position: static !important;
  }

  ul.products-group li.product-item:last-child {
    border-bottom: none !important;
  }

  .product-item__outer {
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
    overflow: hidden !important;
  }

  /* Row layout: image | body | cart zone */
  .product-item__inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    padding: 10px 10px !important;
    gap: 10px !important;
    background: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
  }

  /* Image column */
  .product-media-left {
    flex-shrink: 0 !important;
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    align-self: center !important;
    padding: 0 !important;
  }

  .product-media-left a {
    display: block !important;
  }

  .product-media-left img {
    width: 52px !important;
    height: 52px !important;
    object-fit: contain !important;
    border-radius: 6px !important;
    border: 1px solid #f0f0f0 !important;
    background: #fafafa !important;
    display: block !important;
  }

  /* Middle: title + price + stock badge */
  .product-item__body {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    padding: 0 !important;
    gap: 2px !important;
  }

  /* Hide category row — too small to be useful */
  .product-item__body .mb-2.d-flex {
    display: none !important;
  }

  .product-item__title {
    margin: 0 0 2px !important;
    line-height: 1.2 !important;
  }

  .product-item__title a {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #111 !important;
    text-decoration: none !important;
    overflow: hidden !important;
    line-height: 1.3 !important;
  }

  /* Hide short description */
  .product-short-desc {
    display: none !important;
  }

  /* Price row */
  .product-item__body .mt-auto {
    margin-top: 3px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    flex-wrap: wrap !important;
    padding: 0 !important;
  }

  .product-item__body ins.font-size-18 {
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #111 !important;
    text-decoration: none !important;
    line-height: 1 !important;
  }

  .product-item__body del.font-size-14,
  .product-item__body del.font-size-20 {
    font-size: 10px !important;
    color: #bbb !important;
  }

  .product-item__body small.text-dark {
    display: none !important;
  }

  /* Stock badge — keep visible inline with price */
  .product-item__body .badge {
    font-size: 9px !important;
    padding: 1px 5px !important;
    border-radius: 3px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    line-height: 1.5 !important;
  }

  /* ── HIDE desktop cart wrapper — JS builds mobile version ── */
  .product-item__inner .cart-actions-wrapper,
  .product-item__inner .cart-action-group,
  .product-item__inner .btn-add-to-cart,
  .product-item__inner .btn-update-cart,
  .product-item__inner .btn-contact,
  .product-item__inner a[href^="tel:"],
  .product-item__inner a[href^="mailto:"] {
    display: none !important;
  }

  /* ══════════════════════════════════════════════════════════
     MOBILE INLINE CART ZONE
     Right column of the product row.
     Contains: qty spinner stacked above Add to Cart / Update btn
     OR phone chip for printers  /  "Out of Stock" for OOS
  ══════════════════════════════════════════════════════════ */
  .mob-inline-cart {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 5px !important;
    flex-shrink: 0 !important;
    width: 86px !important;
    /* fixed width so rows don't jitter */
  }

  /* Qty spinner — sits above the action button */
  .mob-inline-qty {
    display: flex !important;
    align-items: center !important;
    border: 1px solid #ddd !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    height: 26px !important;
    width: 100% !important;
    background: #fff !important;
    justify-content: space-around;
  }

  .mob-inline-qty button {
    width: 24px !important;
    height: 26px !important;
    min-width: 24px !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    font-size: 9px !important;
    color: #444 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
  }

  .mob-inline-qty button:active {
    background: #f0f0f0 !important;
  }

  .mob-inline-qty .qty-val {
    flex: 1 !important;
    height: 26px !important;
    border: none !important;
    border-left: 1px solid #e8e8e8 !important;
    border-right: 1px solid #e8e8e8 !important;
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    background: #fff !important;
    padding: 0 !important;
    color: #111 !important;
    line-height: 26px !important;
  }

  /* Action button: "Add to Cart" / "Update" / phone */
  .mob-inline-action-btn {
    width: 100% !important;
    height: 28px !important;
    border-radius: 14px !important;
    border: none !important;
    background: #ea1b25 !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
    transition: background 0.15s, opacity 0.15s !important;
    text-decoration: none !important;
    padding: 0 6px !important;
  }

  .mob-inline-action-btn:active {
    background: #c41520 !important;
  }

  .mob-inline-action-btn[disabled],
  .mob-inline-action-btn.disabled {
    opacity: 0.45 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
  }

  /* Out of stock label */
  .mob-inline-oos {
    font-size: 9px !important;
    font-weight: 700 !important;
    color: #c41520 !important;
    text-align: center !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
  }

  h4.section-title {
    font-size: 12px !important;
    font-weight: 800 !important;
    margin: 0 !important;
    padding: 9px 11px 7px !important;
    border-bottom: 2px solid #ea1b25 !important;
    background: #fafafa !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2px !important;
  }

  .badge-danger {
    background: #fee2e2 !important;
    color: #991b1b !important;
    font-size: 9px !important;
  }

  .badge-success {
    background: #dcfce7 !important;
    color: #166534 !important;
    font-size: 9px !important;
  }

  ul.products-group small[style*="color:red"] {
    font-size: 9px !important;
    font-weight: 700 !important;
  }

  /* ══════════════════════════════════════════════════════════
     PRODUCT TAB — hide in original position on mobile;
     JS will move it after #related-products-container
  ══════════════════════════════════════════════════════════ */
  .mobile-tab-original {
    display: none !important;
  }

  /* Once moved, the clone sits after related products */
  #mobile-tab-after-related {
    display: block !important;
    margin-top: 24px !important;
  }

}

/* Constrain the search form on mobile */
@media (max-width: 767.98px) {
  .search-form {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .dropdown.bootstrap-select.form-control.js-select.dropdown-select.dropup {
    background-color: unset !important;
  }

  .bootstrap-select .dropdown-menu {
    min-width: 100% !important;
    max-width: 100% !important;
    transform: unset !important;
  }

  .bootstrap-select .dropdown-menu {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* ── FORCE-SHOW drawer content ───────────────────────────── */
.mob-product-drawer.open {
  display: block !important;
}

.mob-product-drawer.open .drawer-actions {
  display: flex !important;
}

.mob-product-drawer.open .drawer-contact-row {
  display: flex !important;
}

.mob-product-drawer.open .drawer-qty {
  display: flex !important;
}