
/* Alinha a navbar global às mesmas bordas do catálogo MM2. */
html.mm2-catalog-page [data-mm2-navbar] > .container {
  width: min(calc(100% - 24px), 1800px);
  max-width: none;
  padding-right: 0;
  padding-left: 0;
}

.mm2-catalog {
  --mm2-bg: #080909;
  --mm2-surface: #111;
  --mm2-surface-2: #151515;
  --mm2-border: rgba(255, 255, 255, .09);
  --mm2-border-soft: rgba(255, 255, 255, .065);
  --mm2-border-strong: rgba(255, 255, 255, .14);
  --mm2-control: #101113;
  --mm2-control-hover: #17181b;
  --mm2-text: #f5f5f5;
  --mm2-muted: #999da5;
  --mm2-red: #d60000;
  --mm2-red-strong: #d60000;
  --mm2-red-text: #d60000;
  --mm2-red-border: rgba(214, 0, 0, .34);
  --mm2-red-border-strong: rgba(214, 0, 0, .48);
  --mm2-red-soft: rgba(214, 0, 0, .12);
  --mm2-red-soft-strong: rgba(214, 0, 0, .18);
  --mm2-red-shadow: rgba(214, 0, 0, .12);
  width: 100%;
  padding: 20px 0 28px;
  color: var(--mm2-text);
}

.mm2-catalog,
.mm2-catalog * {
  box-sizing: border-box;
}

.mm2-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.mm2-catalog__layout {
  display: grid;
  grid-template-columns: 304px minmax(0, 1fr);
  gap: 20px;
  width: min(calc(100% - 24px), 1800px);
  margin: 0 auto;
  align-items: start;
}

.mm2-catalog__content {
  min-width: 0;
}

.mm2-catalog__sidebar {
  position: sticky;
  top: 96px;
  z-index: 9;
  max-height: calc(100vh - 116px);
  overflow-x: hidden;
  overflow-y: auto;
  border: 1px solid var(--mm2-border-strong);
  border-radius: 16px;
  background: #0b0c0d;
  box-shadow: 0 20px 50px rgba(0, 0, 0, .28);
  scrollbar-color: #34373c transparent;
  scrollbar-width: thin;
}

.mm2-catalog__sidebar::-webkit-scrollbar {
  width: 5px;
}

.mm2-catalog__sidebar::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: #34373c;
}

.mm2-sidebar__header {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  min-height: 62px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 16px;
  border-bottom: 1px solid var(--mm2-border-soft);
  background: rgba(11, 12, 13, .98);
}

.mm2-sidebar__header h2 {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 760;
  letter-spacing: -.025em;
}

.mm2-sidebar__clear,
.mm2-sidebar__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 32px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: #a6abb3;
  font: inherit;
  font-size: 12px;
  font-weight: 650;
  cursor: pointer;
  transition: color .18s ease, opacity .18s ease;
}

.mm2-sidebar__clear:hover {
  color: #d7dbe0;
}

.mm2-sidebar__clear svg {
  width: 14px;
  height: 14px;
}

.mm2-sidebar__close {
  display: none;
  width: 40px;
  flex: 0 0 40px;
  padding: 0;
  border-radius: 10px;
}

.mm2-sidebar__close:hover {
  background: rgba(255, 255, 255, .04);
  color: #fff;
}

.mm2-sidebar__body {
  padding: 0;
}

.mm2-filter-section {
  padding: 15px 16px 16px;
}

.mm2-filter-section + .mm2-filter-section {
  border-top: 1px solid var(--mm2-border-soft);
}

.mm2-filter-section--price {
  padding-bottom: 12px;
}

.mm2-filter-section--stock {
  padding-top: 12px;
}

.mm2-filter-section--mobile-sort {
  display: none;
}

.mm2-filter-section__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 9px;
}

.mm2-filter-section__title h3 {
  margin: 0;
  color: #7f848d;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.mm2-filter-categories {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.mm2-filter-category {
  display: flex;
  min-width: 0;
  min-height: 32px;
  align-items: center;
  justify-content: flex-start;
  margin: 0;
  padding: 0 11px;
  gap: 8px;
  border: 1px solid var(--mm2-border);
  border-radius: 12px;
  background: var(--mm2-control);
  color: #d2d2d2;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.15;
  text-align: left;
  cursor: pointer;
  white-space: normal;
  appearance: none;
  -webkit-appearance: none;
  transition: color .16s ease, border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

.mm2-filter-category.is-active {
  border-color: #d60000;
  background: linear-gradient(180deg, #d60000, #b50000);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}

.mm2-filter-category:focus-visible {
  outline: 2px solid #4b515d;
  outline-offset: 2px;
}

.mm2-price-panel {
  display: grid;
  gap: 8px;
}

.mm2-price-presets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.mm2-price-preset {
  display: flex;
  min-width: 0;
  height: 36px;
  align-items: center;
  justify-content: center;
  padding: 0 9px;
  border: 1px solid var(--mm2-border);
  border-radius: 12px;
  background: var(--mm2-control);
  color: #d2d2d2;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .01em;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease;
}

.mm2-price-preset:focus-visible {
  outline: 2px solid #4b515d;
  outline-offset: 2px;
}

.mm2-price-preset[aria-pressed="true"] {
  border-color: #d60000;
  background: linear-gradient(180deg, #d60000, #b50000);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}

.mm2-availability-toggle {
  display: flex;
  position: relative;
  width: 100%;
  min-height: 50px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px;
  border: 1px solid var(--mm2-border);
  border-radius: 12px;
  background: var(--mm2-control);
  color: #d9dce1;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .12s ease;
}

.mm2-availability-toggle:active {
  transform: scale(.995);
}

.mm2-availability-toggle:focus-within {
  outline: 2px solid #4b515d;
  outline-offset: 2px;
}

.mm2-availability-toggle__main {
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: flex-start;
  gap: 8px;
  text-align: left;
}

.mm2-availability-toggle__icon {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  margin-top: 1px;
  color: #767d87;
  transition: color .18s ease;
}

.mm2-availability-toggle__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.mm2-availability-toggle__label {
  color: #dde1e6;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.1;
  transition: color .18s ease;
}

.mm2-availability-toggle__description {
  color: #878d96;
  font-size: 9px;
  font-weight: 500;
  line-height: 1.2;
}

.mm2-availability-toggle__switch {
  position: relative;
  width: 34px;
  height: 20px;
  flex: 0 0 34px;
  margin-left: auto;
  border: 1px solid #444a54;
  border-radius: 12px;
  background: #15181d;
  transition: border-color .18s ease, background-color .18s ease;
}

.mm2-availability-toggle__switch > span {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 12px;
  height: 12px;
  border-radius: 4px;
  background: #6f7680;
  transition: transform .18s ease, background-color .18s ease;
}

.mm2-availability-toggle:has(input:checked) {
  border-color: #d60000;
  background: linear-gradient(180deg, #d60000, #b50000);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}

.mm2-availability-toggle:has(input:checked) .mm2-availability-toggle__icon,
.mm2-availability-toggle:has(input:checked) .mm2-availability-toggle__label {
  color: #fff;
}

.mm2-availability-toggle:has(input:checked) .mm2-availability-toggle__description {
  color: rgba(255, 255, 255, .72);
}

.mm2-availability-toggle:has(input:checked) .mm2-availability-toggle__switch {
  border-color: rgba(255, 255, 255, .42);
  background: rgba(0, 0, 0, .16);
}

.mm2-availability-toggle:has(input:checked) .mm2-availability-toggle__switch > span {
  background: #17181b;
  transform: translateX(14px);
}

.mm2-filter-category:disabled,
.mm2-price-preset:disabled,
.mm2-sidebar__clear:disabled,
.mm2-sidebar__close:disabled,
.mm2-availability-toggle:has(input:disabled) {
  opacity: .42;
  cursor: not-allowed;
}

.mm2-sidebar__mobile-footer {
  display: none;
}

.mm2-catalog__overlay {
  display: none;
}

.mm2-sort-mobile-label {
  display: none;
}

.mm2-sort-mobile-icon {
  display: none;
}

.mm2-catalog-hero {
  --c-grad: linear-gradient(90deg,#ff004c,#ff8a00,#ffe600,#00ff85,#00ffff,#0066ff,#b000ff,#ff00b8);
  position: relative;
  min-height: 362px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 10px;
  background: #090909;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .02);
}

.mm2-catalog-hero__inner {
  position: relative;
  z-index: 1;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(410px, .88fr) minmax(500px, 1.12fr);
  min-height: 360px;
}

.mm2-catalog-hero__backdrop {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(90deg, #060607 0%, rgba(6, 6, 7, .995) 34%, rgba(6, 6, 7, .94) 43%, rgba(6, 6, 7, .6) 51%, rgba(6, 6, 7, .08) 64%, transparent 74%),
    linear-gradient(180deg, rgba(0, 0, 0, .16), transparent 55%, rgba(0, 0, 0, .24));
}

.mm2-catalog-hero__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 26px 18px 19px 30px;
}

.mm2-catalog-hero__eyebrow {
  color: #aeb4bf;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .28em;
}

.mm2-catalog-hero__title {
  display: grid;
  margin: 8px 0 7px;
  color: #fafafa;
  font-size: clamp(50px, 4.35vw, 72px);
  font-weight: 950;
  line-height: .83;
  text-transform: uppercase;
  letter-spacing: -.04em;
  text-shadow: 0 5px 20px rgba(0, 0, 0, .55);
}

.mm2-catalog-hero__title strong {
  color: var(--mm2-red-text);
  font-weight: inherit;
}

.mm2-catalog-hero__description {
  max-width: 520px;
  margin: 6px 0 0;
  color: #c3c5ca;
  font-size: 13px;
  font-weight: 550;
  line-height: 1.45;
}

.mm2-catalog-hero__rarities {
  display: none;
}

.mm2-catalog-hero__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
}

.mm2-catalog-hero__primary,
.mm2-catalog-hero__secondary {
  display: inline-flex;
  min-height: 43px;
  align-items: center;
  justify-content: center;
  gap: 13px;
  padding: 0 21px;
  border-radius: 999px;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
}

.mm2-catalog-hero__primary {
  min-width: 172px;
  border: 1px solid #d60000;
  background: linear-gradient(180deg, #d60000, #b50000);
  color: #fff;
  box-shadow: 0 9px 24px rgba(214, 0, 0, .20);
}

.mm2-catalog-hero__primary svg {
  width: 16px;
  height: 16px;
}

.mm2-catalog-hero__secondary {
  min-width: 146px;
  border: 1px solid rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .035);
  color: #d5d7dc;
}

.mm2-catalog-hero__primary:hover,
.mm2-catalog-hero__secondary:hover {
  transform: translateY(-1px);
}

.mm2-catalog-hero__secondary:hover {
  border-color: rgba(255, 255, 255, .25);
  background: rgba(255, 255, 255, .065);
  color: #fff;
}

.mm2-catalog-hero__benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: auto;
  padding-top: 18px;
}

.mm2-catalog-hero__benefit {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 9px;
}

.mm2-catalog-hero__benefit > svg {
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  color: var(--mm2-red-text);
  stroke-width: 1.8;
}

.mm2-catalog-hero__benefit span {
  display: grid;
  min-width: 0;
  gap: 1px;
}

.mm2-catalog-hero__benefit strong {
  color: #f4f4f5;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
  text-wrap: balance;
}

.mm2-catalog-hero__benefit small {
  overflow: hidden;
  color: #93979e;
  font-size: 10px;
  font-weight: 550;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mm2-catalog-hero__art {
  position: relative;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  isolation: isolate;
  pointer-events: none;
}

/*
 * Mesma órbita já usada nas categorias separadas.
 * As classes w-glow, c-ring, o-ring, o-knf, w-stack e r-front
 * vêm de bannercategoria.css; aqui só encaixamos a órbita no hero MM2.
 */
.mm2-catalog-hero__orbit {
  width: min(620px, 96%);
  height: 280px;
  transform: translateY(16px);
}

.mm2-catalog-hero__orbit-main {
  width: min(390px, 84%);
}

.mm2-catalog-hero__orbit-main .img-l.single {
  filter:
    drop-shadow(0 30px 38px rgba(0, 0, 0, .75))
    drop-shadow(0 0 18px rgb(var(--tone-a) / .18));
}

.mm2-catalog-hero__orbit-item {
  opacity: .9;
}

.mm2-catalog-hero__orbit-item--batwing {
  width: 76px;
}

.mm2-catalog-hero__orbit-item--vampire-gun {
  width: 84px;
}

.mm2-catalog-hero__orbit-item--candy {
  width: 70px;
}

.mm2-catalog-hero__orbit-item--darkbringer {
  width: 82px;
}

/* =========================================================
   MM2 · refinamento visual da órbita
   Mantém a estrutura original das categorias separadas.
   ========================================================= */
.mm2-catalog-hero__orbit {
  isolation: isolate;
  perspective: 900px;
}

/* Disco ambiente: cria volume sem virar um glow neon. */
.mm2-catalog-hero__orbit::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  width: 76%;
  height: 48%;
  border: 1px solid rgba(255, 255, 255, .045);
  border-radius: 50%;
  background:
    radial-gradient(ellipse at center, rgba(214, 0, 0, .055) 0%, rgba(105, 0, 0, .026) 42%, transparent 72%),
    radial-gradient(ellipse at center, rgba(255, 255, 255, .018), transparent 64%);
  box-shadow:
    inset 0 0 30px rgba(255, 255, 255, .018),
    0 0 30px rgba(100, 0, 0, .045);
  transform: translate(-50%, -50%) rotate(-14deg);
  pointer-events: none;
}

/* Sombra/reflexo que ancora o item central na composição. */
.mm2-catalog-hero__orbit::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: 36px;
  width: 43%;
  height: 28px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, .68), rgba(0, 0, 0, .18) 56%, transparent 76%);
  filter: blur(10px);
  transform: translateX(-50%);
  pointer-events: none;
}

.mm2-catalog-hero__orbit .w-glow {
  z-index: 1;
  width: 310px;
  height: 224px;
  opacity: .82;
  filter: blur(20px);
}

.mm2-catalog-hero__orbit .w-glow::before {
  background: radial-gradient(ellipse at center, rgb(var(--tone-a) / .22) 0%, rgb(var(--tone-a) / .075) 40%, transparent 72%);
}

.mm2-catalog-hero__orbit .w-glow::after {
  background: radial-gradient(ellipse at center, rgb(var(--tone-b) / .13) 0%, rgb(var(--tone-b) / .045) 44%, transparent 74%);
}

/* Órbita principal: linhas finas e menos artificiais. */
.mm2-catalog-hero__orbit .c-ring,
.mm2-catalog-hero__orbit .r-front {
  width: 472px;
  height: 138px;
  transform: rotate(-14deg);
}

.mm2-catalog-hero__orbit .c-ring {
  z-index: 2;
}

.mm2-catalog-hero__orbit .o-ring {
  border-color: rgb(var(--tone-a) / .24);
  box-shadow:
    0 0 16px rgb(var(--tone-a) / .07),
    inset 0 0 16px rgba(255, 255, 255, .025);
}

.mm2-catalog-hero__orbit .o-ring::before {
  inset: -7px;
  border-color: rgb(var(--tone-a) / .13);
  opacity: .72;
}

.mm2-catalog-hero__orbit .o-ring::after {
  inset: 16px 22px;
  border-style: solid;
  border-color: rgba(255, 255, 255, .045);
  opacity: .75;
  filter: none;
}

.mm2-catalog-hero__orbit .o-ring.tone-b {
  border-color: rgb(var(--tone-b) / .19);
  box-shadow:
    0 0 14px rgb(var(--tone-b) / .055),
    inset 0 0 15px rgba(255, 255, 255, .02);
}

/* Pequenos marcadores técnicos nos quatro eixos da órbita. */
.mm2-catalog-hero__orbit .c-ring::before {
  content: "";
  position: absolute;
  z-index: 4;
  top: calc(50% - 2px);
  left: -2px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(255, 245, 245, .72);
  box-shadow:
    472px 0 0 rgba(214, 0, 0, .44),
    236px -69px 0 rgba(214, 0, 0, .32),
    236px 69px 0 rgba(214, 0, 0, .25);
  filter: drop-shadow(0 0 4px rgba(214, 0, 0, .15));
}

.mm2-catalog-hero__orbit .c-ring::after {
  content: "";
  position: absolute;
  inset: 27px 62px;
  border: 1px solid rgba(255, 255, 255, .035);
  border-radius: inherit;
  box-shadow: inset 0 0 16px rgba(214, 0, 0, .016);
  pointer-events: none;
}

/* Arco frontal um pouco mais nítido: passa na frente do item central. */
.mm2-catalog-hero__orbit .r-front {
  z-index: 7;
  opacity: .86;
}

.mm2-catalog-hero__orbit .r-front::before {
  border-bottom-color: rgb(var(--tone-a) / .48);
  filter: drop-shadow(0 0 7px rgb(var(--tone-a) / .22));
}

.mm2-catalog-hero__orbit .r-front::after {
  border-bottom-color: rgb(var(--tone-b) / .28);
  filter: drop-shadow(0 0 5px rgb(var(--tone-b) / .14));
}

/* Protagonista: contraste e sombra física em vez de halo forte. */
.mm2-catalog-hero__orbit-main {
  z-index: 5;
}

.mm2-catalog-hero__orbit-main::before {
  inset: 20%;
  background: radial-gradient(circle, rgb(var(--tone-a) / .15), transparent 68%);
  filter: blur(28px);
}

.mm2-catalog-hero__orbit-main::after {
  inset: 27%;
  background: radial-gradient(circle, rgba(255, 255, 255, .04), transparent 68%);
  filter: blur(18px);
}

.mm2-catalog-hero__orbit-main .img-l.single {
  filter:
    drop-shadow(0 32px 34px rgba(0, 0, 0, .72))
    drop-shadow(0 10px 16px rgba(0, 0, 0, .42))
    drop-shadow(0 0 9px rgb(var(--tone-a) / .12));
}

/* Profundidade real: os dois de cima ficam atrás; os de baixo, à frente. */
.mm2-catalog-hero__orbit .k1,
.mm2-catalog-hero__orbit .k2 {
  z-index: 3;
  opacity: .80;
  filter:
    saturate(.92)
    brightness(.91)
    drop-shadow(0 14px 18px rgba(0, 0, 0, .66))
    drop-shadow(0 0 6px rgb(var(--tone-a) / .10));
}

.mm2-catalog-hero__orbit .k3,
.mm2-catalog-hero__orbit .k4 {
  z-index: 6;
  opacity: .96;
  filter:
    saturate(1.02)
    brightness(1.01)
    drop-shadow(0 18px 22px rgba(0, 0, 0, .69))
    drop-shadow(0 0 7px rgb(var(--tone-a) / .13));
}

.mm2-catalog-hero__orbit .k1 {
  top: 32px;
  left: 50px;
}

.mm2-catalog-hero__orbit .k2 {
  top: 24px;
  right: 48px;
}

.mm2-catalog-hero__orbit .k3 {
  bottom: 26px;
  left: 84px;
}

.mm2-catalog-hero__orbit .k4 {
  right: 62px;
  bottom: 28px;
}

.mm2-catalog__toolbar {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin: 10px 0 8px;
  padding: 6px;
  align-items: center;
  border: 1px solid var(--mm2-border);
  border-radius: 12px;
  background: #0b0c0d;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
}

.mm2-category-chips {
  display: flex;
  min-width: 0;
  gap: 7px;
  padding-bottom: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, .14) transparent;
}

.mm2-category-chips::-webkit-scrollbar {
  height: 4px;
}

.mm2-category-chips::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(255, 255, 255, .14);
}

.mm2-category-chip {
  display: inline-flex;
  min-height: 40px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 18px;
  border: 1px solid var(--mm2-border);
  border-radius: 9px;
  background: var(--mm2-control);
  color: #c8cbd0;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
  cursor: pointer;
  transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}

.mm2-category-chip:hover {
  border-color: var(--mm2-border-strong);
  background: var(--mm2-control-hover);
  color: #fff;
}

.mm2-category-chip.is-active {
  border-color: #d60000;
  background: linear-gradient(180deg, #d60000, #b50000);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}

.mm2-filter-category > svg,
.mm2-category-chip > svg {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  opacity: .78;
}

.mm2-filter-category.is-active > svg,
.mm2-category-chip.is-active > svg {
  opacity: 1;
}

.mm2-catalog__controls {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(190px, 220px) 145px;
  gap: 10px;
}

.mm2-catalog-search,
.mm2-catalog-sort,
.mm2-mobile-filter-button {
  position: relative;
  display: flex;
  height: 40px;
  align-items: center;
  border: 1px solid var(--mm2-border);
  border-radius: 9px;
  background: var(--mm2-control);
  color: #bfc3c9;
  transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}

.mm2-catalog-search:hover,
.mm2-catalog-sort:hover,
.mm2-mobile-filter-button:hover {
  border-color: var(--mm2-border-strong);
  background: var(--mm2-control-hover);
}

.mm2-catalog-search > svg {
  position: absolute;
  left: 13px;
  width: 17px;
  height: 17px;
  color: #727983;
  pointer-events: none;
}

.mm2-catalog-search input {
  width: 100%;
  height: 100%;
  padding: 0 39px 0 41px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #f0f1f2;
  font: inherit;
  font-size: 12px;
}

.mm2-catalog-search input::placeholder {
  color: #90959d;
  opacity: 1;
}

.mm2-catalog-search button {
  position: absolute;
  right: 3px;
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #858b94;
  cursor: pointer;
  transition: color .15s ease, background-color .15s ease;
}

.mm2-catalog-search button:hover {
  background: rgba(255, 255, 255, .055);
  color: #fff;
}

.mm2-catalog-search button[hidden] {
  display: none;
}

.mm2-catalog-search button svg {
  width: 15px;
  height: 15px;
}

.mm2-catalog-search:focus-within,
.mm2-catalog-sort:focus-within {
  border-color: var(--mm2-red-border-strong);
  box-shadow: 0 0 0 3px rgba(214, 0, 0, .07);
}

.mm2-catalog-sort select {
  width: 100%;
  height: 100%;
  appearance: none;
  -webkit-appearance: none;
  padding: 0 34px 0 14px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #d9dce0;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
  color-scheme: dark;
}

.mm2-catalog-sort select option {
  background: #111214;
  color: #f3f4f5;
}

.mm2-catalog-sort .mm2-sort-trigger,
.mm2-catalog-sort .mm2-sort-menu {
  display: none;
}

.mm2-catalog-sort.is-enhanced > select {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.mm2-catalog-sort.is-enhanced .mm2-sort-trigger {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 11px 0 13px;
  border: 0;
  border-radius: inherit;
  background: transparent;
  color: #d9dce0;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.mm2-catalog-sort .mm2-sort-trigger > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mm2-catalog-sort .mm2-sort-trigger > svg {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  color: #8a9098;
  transition: color .16s ease, transform .16s ease;
}

.mm2-catalog-sort.is-open .mm2-sort-trigger > svg {
  color: #d5d8dd;
  transform: rotate(180deg);
}

.mm2-catalog-sort.is-enhanced .mm2-sort-menu {
  position: absolute;
  top: calc(100% + 7px);
  left: auto;
  right: 0;
  z-index: 30;
  width: 204px;
  padding: 27px 6px 6px;
  border: 1px solid var(--mm2-border-strong);
  border-radius: 12px;
  background: #0d0e10;
  box-shadow: 0 18px 38px rgba(0, 0, 0, .48), inset 0 1px 0 rgba(255, 255, 255, .025);
}

.mm2-catalog-sort.is-enhanced .mm2-sort-menu::before {
  position: absolute;
  top: 9px;
  left: 11px;
  color: #6f747d;
  content: "Ordenar por";
  font-size: 9px;
  font-weight: 750;
  line-height: 1;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.mm2-catalog-sort.is-enhanced .mm2-sort-menu:not([hidden]) {
  display: grid;
  gap: 2px;
}

.mm2-catalog-sort .mm2-sort-menu button {
  display: flex;
  width: 100%;
  min-height: 36px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 9px 0 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #aeb3bb;
  font: inherit;
  font-size: 11px;
  font-weight: 680;
  text-align: left;
  cursor: pointer;
  transition: border-color .14s ease, background-color .14s ease, color .14s ease;
}

.mm2-catalog-sort .mm2-sort-menu button:hover,
.mm2-catalog-sort .mm2-sort-menu button:focus-visible {
  background: #17191c;
  color: #f2f3f4;
  outline: 0;
}

.mm2-catalog-sort .mm2-sort-menu button:focus-visible {
  border-color: #454a52;
}

.mm2-catalog-sort .mm2-sort-menu button.is-active {
  border-color: rgba(255, 255, 255, .08);
  background: #151619;
  color: #fff;
}

.mm2-catalog-sort .mm2-sort-menu button > svg {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  color: var(--mm2-red);
  opacity: 0;
}

.mm2-catalog-sort .mm2-sort-menu button.is-active > svg {
  opacity: 1;
}

.mm2-mobile-filter-button {
  display: none;
  justify-content: center;
  gap: 7px;
  padding: 0 12px;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.mm2-mobile-filter-button.is-active,
.mm2-mobile-filter-button.is-active:hover {
  border-color: #d60000;
  background: linear-gradient(180deg, #d60000, #b50000);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}

.mm2-mobile-filter-button > svg {
  width: 16px;
  height: 16px;
}

.mm2-mobile-filter-button [data-mm2-active-filter-count] {
  display: grid;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  place-items: center;
  border-radius: 999px;
  background: var(--mm2-red);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}

.mm2-mobile-filter-button [data-mm2-active-filter-count][hidden] {
  display: none;
}

.mm2-category-chip:disabled,
.mm2-catalog-search:has(input:disabled),
.mm2-catalog-sort:has(select:disabled),
.mm2-mobile-filter-button:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.mm2-catalog-search input:disabled,
.mm2-catalog-sort select:disabled {
  cursor: not-allowed;
}

.mm2-catalog__sidebar ::selection,
.mm2-catalog__toolbar ::selection {
  background: #d60000;
  color: #fff;
}

.mm2-products-grid {
  min-width: 0;
}

/* Desktop amplo: mantém 4 produtos por linha para preservar leitura e proporção dos cards. */
@media (min-width: 1200px) {
  .mm2-catalog .mm2-products-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) and (hover: hover) and (pointer: fine) {
  .mm2-filter-category:not(.is-active):not(:disabled):hover,
  .mm2-price-preset:not([aria-pressed="true"]):not(:disabled):hover,
  .mm2-availability-toggle:not(:has(input:checked)):not(:has(input:disabled)):hover {
    border-color: var(--mm2-border-strong);
    background: var(--mm2-control-hover);
    color: #f4f5f6;
  }

  .mm2-filter-category:not(.is-active):not(:disabled):hover > svg,
  .mm2-availability-toggle:not(:has(input:checked)):not(:has(input:disabled)):hover .mm2-availability-toggle__icon {
    color: #aeb3bb;
    opacity: 1;
  }

  .mm2-availability-toggle:not(:has(input:checked)):not(:has(input:disabled)):hover .mm2-availability-toggle__label {
    color: #f4f5f6;
  }

  .mm2-availability-toggle:not(:has(input:checked)):not(:has(input:disabled)):hover .mm2-availability-toggle__switch {
    border-color: var(--mm2-border-strong);
  }

  .mm2-catalog-sort:not(:has(select:disabled)):hover .mm2-sort-trigger > svg {
    color: var(--mm2-red);
    opacity: 1;
  }

  .mm2-catalog-sort:not(:has(select:disabled)):hover {
    border-color: var(--mm2-red-border);
  }
}

.mm2-products-grid [data-mm2-card][hidden] {
  display: none !important;
}

.mm2-catalog-loading,
.mm2-catalog-empty,
.mm2-catalog-error {
  min-height: 190px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
  border: 1px solid var(--mm2-border-soft);
  border-radius: 10px;
  background: #0b0c0d;
  color: #a4a8ae;
  font-size: 12px;
  text-align: center;
}

.mm2-catalog-loading {
  display: flex;
}

.mm2-catalog-loading[hidden],
.mm2-catalog-empty[hidden],
.mm2-catalog-error[hidden] {
  display: none;
}

.mm2-catalog-loading > span {
  width: 24px;
  height: 24px;
  border: 2px solid rgba(255, 255, 255, .15);
  border-top-color: var(--mm2-red);
  border-radius: 50%;
  animation: mm2-catalog-spin .7s linear infinite;
}

.mm2-catalog-empty,
.mm2-catalog-error {
  display: flex;
  padding: 26px 18px;
}

.mm2-catalog-empty > svg {
  width: 25px;
  height: 25px;
  color: #747a82;
}

.mm2-catalog-empty strong,
.mm2-catalog-error strong {
  color: #f4f4f5;
  font-size: 15px;
}

.mm2-empty-recommendations {
  display: grid;
  gap: 8px;
  width: min(100%, 560px);
  margin-top: 8px;
}

.mm2-empty-recommendations[hidden] {
  display: none;
}

.mm2-empty-recommendations > span {
  color: #a1a1aa;
  font-size: 12px;
}

.mm2-empty-recommendations > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px;
}

.mm2-empty-recommendations button {
  margin-top: 0;
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .055);
  color: #e4e4e7;
}

.mm2-empty-recommendations button:hover {
  border-color: var(--mm2-red-border);
  background: rgba(214, 0, 0, .07);
}

.mm2-catalog-empty button,
.mm2-catalog-error button {
  min-height: 36px;
  margin-top: 5px;
  padding: 0 14px;
  border: 1px solid var(--mm2-red-border);
  border-radius: 7px;
  background: rgba(214, 0, 0, .09);
  color: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}

.mm2-category-chip:focus-visible,
.mm2-sidebar__clear:focus-visible,
.mm2-sidebar__close:focus-visible,
.mm2-mobile-filter-button:focus-visible,
.mm2-catalog-search button:focus-visible,
.mm2-sidebar__mobile-footer button:focus-visible,
.mm2-catalog-hero__primary:focus-visible,
.mm2-catalog-hero__secondary:focus-visible,
.mm2-catalog-empty button:focus-visible,
.mm2-catalog-error button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

@keyframes mm2-catalog-spin {
  to { transform: rotate(360deg); }
}

@media (max-width: 1250px) {
  .mm2-catalog-hero__inner {
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
  }

  .mm2-catalog-hero__copy {
    padding-left: 24px;
  }

  .mm2-catalog-hero__benefits {
    gap: 8px;
  }

  .mm2-catalog__toolbar {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .mm2-catalog__controls {
    grid-template-columns: minmax(0, 1fr) 150px;
  }
}

@media (max-width: 1023px) {
  html.mm2-catalog-page [data-mm2-navbar] > .container {
    width: min(calc(100% - 20px), 980px);
  }

  .mm2-catalog {
    padding-top: 14px;
  }

  .mm2-catalog__layout {
    display: block;
    width: min(calc(100% - 20px), 980px);
  }

  .mm2-catalog__sidebar {
    position: fixed;
    z-index: 1002;
    top: var(--mm2-filter-drawer-top, 72px);
    right: 0;
    bottom: auto;
    left: 0;
    display: flex;
    height: calc(100vh - var(--mm2-filter-drawer-top, 72px));
    height: var(--mm2-filter-drawer-height, calc(100dvh - var(--mm2-filter-drawer-top, 72px)));
    max-height: none;
    flex-direction: column;
    overflow: hidden;
    transform: translateY(105%);
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
    border-radius: 22px 22px 0 0;
    background: linear-gradient(180deg, rgba(16, 17, 19, .90), rgba(11, 12, 13, .91) 110px);
    -webkit-backdrop-filter: blur(12px) saturate(112%);
    backdrop-filter: blur(12px) saturate(112%);
    box-shadow: none;
    visibility: hidden;
    transition: transform .24s ease, visibility .24s ease;
  }

  .mm2-catalog__sidebar::before {
    position: absolute;
    top: 8px;
    left: 50%;
    z-index: 4;
    width: 38px;
    height: 4px;
    border-radius: 999px;
    background: #3c3f45;
    content: "";
    transform: translateX(-50%);
  }

  .mm2-catalog__sidebar.is-open {
    transform: translateY(0);
    visibility: visible;
  }

  .mm2-sidebar__header {
    flex: 0 0 auto;
    min-height: 72px;
    padding: 9px max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));
    background: rgba(14, 15, 17, .84);
  }

  .mm2-sidebar__header h2 {
    font-size: 17px;
  }

  .mm2-sidebar__clear {
    margin-left: auto;
    margin-right: 3px;
    min-height: 44px;
  }

  .mm2-sidebar__close {
    display: inline-flex;
    width: 44px;
    min-height: 44px;
    flex-basis: 44px;
    border-color: var(--mm2-border);
    background: #17181b;
  }

  .mm2-sidebar__body {
    flex: 1 1 auto;
    padding: 0 0 20px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-color: #3a3d42 transparent;
  }

  .mm2-sidebar__mobile-footer {
    display: block;
    flex: 0 0 auto;
    padding: 12px max(14px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));
    border-top: 1px solid var(--mm2-border-soft);
    background: rgba(12, 13, 14, .86);
  }

  .mm2-sidebar__mobile-footer button {
    width: 100%;
    min-height: 48px;
    border: 1px solid #d60000;
    border-radius: 10px;
    background: #d60000;
    color: #fff;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
  }

  .mm2-sidebar__mobile-footer button:hover {
    border-color: #d60000;
    background: #d60000;
    filter: brightness(.94);
  }

  .mm2-catalog__overlay {
    position: fixed;
    z-index: 1001;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgba(5, 6, 7, .58);
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
    touch-action: none;
  }

  .mm2-catalog__overlay[hidden] {
    display: none;
  }

  html.mm2-filter-drawer-open,
  html.mm2-filter-drawer-open body {
    overflow: hidden;
    overscroll-behavior: none;
  }

  .mm2-mobile-filter-button {
    display: flex;
  }

  .mm2-catalog__controls {
    grid-template-columns: minmax(0, 1fr) clamp(96px, 12vw, 116px) clamp(122px, 16vw, 145px);
  }

  .mm2-catalog-hero__inner {
    grid-template-columns: minmax(340px, .96fr) minmax(360px, 1.04fr);
  }

  .mm2-catalog-hero__title {
    font-size: clamp(46px, 6.5vw, 62px);
  }

  .mm2-catalog-hero__benefit small {
    display: none;
  }
}

@media (max-width: 768px) {
  html.mm2-catalog-page [data-mm2-navbar] > .container {
    width: min(calc(100% - 16px), 480px);
    margin-right: auto;
    margin-left: auto;
  }

  html.mm2-catalog-page [data-mm2-navbar] > .container {
    width: calc(100% - 12px);
  }

  .mm2-catalog__layout {
    width: calc(100% - 12px);
  }

  .mm2-catalog-hero {
    width: 100%;
    min-height: 0;
    aspect-ratio: 5 / 4;
    border-radius: 14px;
  }

  .mm2-catalog-hero__inner {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
  }

  .mm2-catalog-hero__backdrop {
    background:
      linear-gradient(90deg, rgba(4, 4, 5, .99) 0%, rgba(4, 4, 5, .97) 31%, rgba(4, 4, 5, .88) 50%, rgba(4, 4, 5, .58) 72%, rgba(4, 4, 5, .16) 100%),
      linear-gradient(0deg, rgba(4, 4, 5, .84) 0%, rgba(4, 4, 5, .34) 34%, transparent 64%);
  }

  .mm2-catalog-hero__copy {
    z-index: 2;
    grid-area: 1 / 1;
    display: flex;
    flex-direction: column;
    padding: 18px 17px 16px;
  }

  .mm2-catalog-hero__eyebrow {
    display: block;
    font-size: 10px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .22em;
  }


  .mm2-catalog-hero__title {
    width: fit-content;
    margin: 13px 0 0;
    font-size: clamp(35px, 10.8vw, 48px);
    line-height: .84;
    letter-spacing: -.045em;
  }

  .mm2-catalog-hero__title > span {
    white-space: nowrap;
  }

  .mm2-catalog-hero__description {
    width: min(88%, 350px);
    max-width: none;
    margin-top: 14px;
    color: #d1d2d5;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.45;
  }

  .mm2-catalog-hero__benefits {
    order: 4;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: auto;
    padding-top: 16px;
    border-top: 0;
  }

  .mm2-catalog-hero__benefit {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    padding: 0 8px;
  }

  .mm2-catalog-hero__benefit:first-child {
    padding-left: 0;
  }

  .mm2-catalog-hero__benefit:last-child {
    padding-right: 0;
  }

  .mm2-catalog-hero__benefit + .mm2-catalog-hero__benefit::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 1px;
    background: rgba(255, 255, 255, .16);
    content: "";
  }

  .mm2-catalog-hero__benefit > svg {
    width: 21px;
    height: 21px;
    flex: 0 0 21px;
    color: var(--mm2-red-text);
  }

  .mm2-catalog-hero__benefit span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
  }

  .mm2-catalog-hero__benefit strong {
    overflow: hidden;
    color: #f7f7f8;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mm2-catalog-hero__benefit small {
    display: block;
    overflow: hidden;
    color: #9a9ca2;
    font-size: 7.5px;
    font-weight: 500;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mm2-catalog-hero__actions {
    order: 5;
    display: flex;
    width: 100%;
    gap: 7px;
    margin-top: 14px;
    padding: 0;
  }

  .mm2-catalog-hero__primary,
  .mm2-catalog-hero__secondary {
    flex: 1 1 0;
    min-width: 0;
    min-height: 40px;
    padding: 0 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
  }

  .mm2-catalog-hero__primary {
    box-shadow: 0 8px 24px rgba(214, 0, 0, .20), inset 0 1px 0 rgba(255, 255, 255, .16);
  }

  .mm2-catalog-hero__secondary {
    background: rgba(10, 10, 11, .36);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
  }

  .mm2-catalog-hero__art {
    position: relative;
    z-index: 1;
    height: auto;
    min-height: 0;
    grid-area: 1 / 1;
    display: block;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
  }

  .mm2-catalog-hero__orbit {
    position: absolute;
    top: 50%;
    right: -7%;
    width: min(330px, 72vw);
    height: 218px;
    transform: translateY(-50%);
  }

  .mm2-catalog-hero__orbit-main {
    width: min(252px, 84%);
  }

  .mm2-catalog-hero__orbit-item--batwing {
    width: 48px;
  }

  .mm2-catalog-hero__orbit-item--vampire-gun {
    width: 52px;
  }

  .mm2-catalog-hero__orbit-item--candy {
    width: 44px;
  }

  .mm2-catalog-hero__orbit-item--darkbringer {
    width: 52px;
  }

  /* A órbita mantém detalhe no mobile, mas com menos ruído visual. */
  .mm2-catalog-hero__orbit::before {
    width: 86%;
    height: 44%;
    opacity: .76;
    transform: translate(-50%, -50%) rotate(-12deg);
  }

  .mm2-catalog-hero__orbit::after {
    bottom: 27px;
    width: 48%;
    height: 18px;
    filter: blur(7px);
  }

  .mm2-catalog-hero__orbit .w-glow {
    width: 190px;
    height: 150px;
    opacity: .68;
    filter: blur(16px);
  }

  .mm2-catalog-hero__orbit .c-ring,
  .mm2-catalog-hero__orbit .r-front {
    width: 300px;
    height: 96px;
    transform: rotate(-12deg);
  }

  .mm2-catalog-hero__orbit .c-ring::before {
    top: calc(50% - 2px);
    box-shadow:
      300px 0 0 rgba(214, 0, 0, .40),
      150px -48px 0 rgba(214, 0, 0, .29),
      150px 48px 0 rgba(214, 0, 0, .22);
  }

  .mm2-catalog-hero__orbit .c-ring::after {
    inset: 19px 42px;
  }

  .mm2-catalog-hero__orbit .o-ring::after {
    inset: 12px 18px;
  }

  .mm2-catalog-hero__orbit .k1 {
    top: 30px;
    left: 18px;
  }

  .mm2-catalog-hero__orbit .k2 {
    top: 24px;
    right: 18px;
  }

  .mm2-catalog-hero__orbit .k3 {
    bottom: 30px;
    left: 38px;
  }

  .mm2-catalog-hero__orbit .k4 {
    right: 30px;
    bottom: 30px;
  }

  .mm2-catalog-hero__orbit .k1,
  .mm2-catalog-hero__orbit .k2 {
    opacity: .72;
  }

  .mm2-catalog-hero__orbit .k3,
  .mm2-catalog-hero__orbit .k4 {
    opacity: .91;
  }

  .mm2-catalog__toolbar {
    display: flex;
    flex-direction: column;
    margin: 6px 0;
    padding: 0;
    gap: 5px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .mm2-category-chips {
    order: 1;
    width: 100%;
    gap: 5px;
    margin-right: 0;
    padding-right: 0;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .mm2-category-chips::-webkit-scrollbar {
    display: none;
  }

  .mm2-category-chip {
    min-height: 44px;
    gap: 6px;
    padding: 0 11px;
    font-size: 11px;
  }

  .mm2-category-chip > svg {
    width: 13px;
    height: 13px;
    flex-basis: 13px;
  }

  .mm2-catalog__controls {
    order: 2;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) clamp(72px, 13vw, 100px) 44px;
    gap: 5px;
  }

  .mm2-catalog-search,
  .mm2-catalog-sort,
  .mm2-mobile-filter-button {
    height: 44px;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger [data-mm2-sort-value] {
    display: none;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger {
    justify-content: center;
    gap: 0;
    padding: 0;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger > svg.mm2-sort-mobile-icon {
    display: block;
    width: 14px;
    height: 14px;
    flex-basis: 14px;
    color: currentColor;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger > svg.mm2-sort-desktop-icon {
    display: none;
  }
}

@media (max-width: 520px) {
  .mm2-catalog-hero__orbit {
    top: 50%;
    right: -10%;
    width: min(300px, 76vw);
    transform: translateY(-50%);
  }

  .mm2-catalog {
    padding-top: 5px;
  }

  .mm2-catalog-hero__copy {
    padding: 16px 14px 14px;
  }

  .mm2-catalog-hero__description {
    width: min(90%, 350px);
    max-width: none;
  }

  .mm2-catalog-hero__actions {
    gap: 6px;
  }

  .mm2-catalog-hero__primary,
  .mm2-catalog-hero__secondary {
    flex: 1 1 0;
    min-height: 39px;
    padding: 0 10px;
    font-size: 10.5px;
  }

  .mm2-catalog-hero__benefit {
    gap: 5px;
    padding-right: 6px;
    padding-left: 6px;
  }

  .mm2-catalog-search input {
    min-width: 0;
    padding-right: 27px;
    padding-left: 30px;
    font-size: 11px;
  }

  .mm2-catalog-search > svg {
    left: 9px;
    width: 14px;
    height: 14px;
  }

  .mm2-catalog-search button {
    right: 1px;
    width: 31px;
  }

  .mm2-mobile-filter-button,
  .mm2-catalog-sort {
    width: 100%;
  }

  .mm2-mobile-filter-button {
    gap: 4px;
    padding: 0 6px;
    font-size: 11px;
  }

  .mm2-mobile-filter-button > svg {
    width: 13px;
    height: 13px;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger {
    gap: 4px;
    padding: 0 6px;
    font-size: 11px;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-menu {
    width: min(190px, calc(100vw - 28px));
  }

  .mm2-category-chip {
    padding: 0 10px;
  }

  .mm2-catalog-loading,
  .mm2-catalog-empty,
  .mm2-catalog-error {
    min-height: 150px;
  }
}

@media (max-width: 359px) {
  html.mm2-catalog-page [data-mm2-navbar] > .container {
    width: calc(100% - 8px);
  }

  .mm2-catalog__layout {
    width: calc(100% - 8px);
  }

  .mm2-catalog-hero__copy {
    padding: 10px 11px;
  }

  .mm2-catalog-hero__orbit {
    top: 50%;
    right: -13%;
    width: min(286px, 80vw);
    transform: translateY(-50%);
  }

  .mm2-catalog-hero__title {
    font-size: 32px;
    margin-top: 10px;
  }

  .mm2-catalog-hero__description {
    width: 92%;
    max-width: none;
    font-size: 11px;
    margin-top: 8px;
  }

  .mm2-catalog-hero__benefits {
    padding-top: 10px;
  }

  .mm2-catalog-hero__actions {
    margin-top: 10px;
  }

  .mm2-catalog-hero__benefit {
    gap: 4px;
    padding-right: 4px;
    padding-left: 4px;
  }

  .mm2-catalog-hero__benefit > svg {
    width: 18px;
    height: 18px;
    flex-basis: 18px;
  }

  .mm2-catalog-hero__benefit strong {
    font-size: 8px;
  }

  .mm2-catalog-hero__benefit small {
    font-size: 7px;
  }

  .mm2-catalog-hero__primary,
  .mm2-catalog-hero__secondary {
    min-height: 38px;
    padding-right: 8px;
    padding-left: 8px;
    font-size: 10px;
  }

  .mm2-catalog__controls {
    grid-template-columns: minmax(0, 1fr) clamp(68px, 18vw, 84px) 44px;
    gap: 4px;
  }

  .mm2-category-chip {
    padding: 0 9px;
  }

  .mm2-category-chips {
    margin-right: 0;
    padding-right: 0;
  }
}

@media (max-width: 768px) {
  .mm2-catalog-hero__orbit .k4 {
    top: auto;
    right: auto;
    bottom: 4px;
    left: calc(50% - 48px);
    z-index: 8;
    width: 52px;
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mm2-catalog *,
  .mm2-catalog *::before,
  .mm2-catalog *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
/* Progressive catalog + low-cost mobile rendering */
.mm2-products-grid:not([data-mm2-progressive-ready="true"]) > [data-mm2-card]:nth-child(n+25) {
  display: none;
}

@supports (content-visibility: auto) {
  .mm2-products-grid > [data-mm2-card] {
    content-visibility: auto;
    contain-intrinsic-size: auto 420px;
  }
}

@media (max-width: 1023px), (hover: none), (pointer: coarse) {
  .mm2-catalog-hero__secondary {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: rgba(10, 10, 11, .62);
  }

  .mm2-catalog-hero__primary {
    box-shadow: 0 4px 12px rgba(214, 0, 0, .14), inset 0 1px 0 rgba(255, 255, 255, .12);
  }

  .mm2-catalog .image-brilho::before {
    display: none !important;
  }
}

.mm2-catalog--lite .mm2-catalog__overlay {
  background: rgba(5, 6, 7, .66);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.mm2-catalog--lite .mm2-catalog__sidebar {
  background: linear-gradient(180deg, rgba(16, 17, 19, .94), rgba(11, 12, 13, .95) 110px);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}

.mm2-catalog--lite .package-reveal {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  transition: none !important;
}

.mm2-catalog--lite .mm2-catalog-hero__primary {
  box-shadow: none;
}

/* MAIS POPULAR — mantém o efeito selecionado original, usando #d60000. */
.mm2-filter-category[data-mm2-category-option="mais-popular"].is-active,
.mm2-category-chip[data-mm2-category-option="mais-popular"].is-active {
  border-color: rgba(214, 0, 0, .56);
  background: #d60000;
  color: #fff;
  box-shadow: 0 5px 16px rgba(214, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .12);
}

@media (hover: hover) {
  .mm2-filter-category[data-mm2-category-option="mais-popular"].is-active:hover,
  .mm2-category-chip[data-mm2-category-option="mais-popular"].is-active:hover {
    border-color: rgba(214, 0, 0, .68);
    background: #d60000;
    color: #fff;
  }
}

/* =========================================================
   MM2 · REDESIGN MOBILE COMPACTO 2026-09
   Escopo: banner > chips > busca/filtros/ordenação > grade.
   Mantém navbar, markup, filtros e comportamento existentes.
   ========================================================= */
@media (max-width: 768px) {
  /* Faz o catálogo começar mais cedo sem tocar na navbar. */
  .mm2-catalog {
    padding-top: 6px;
    padding-bottom: 30px;
  }

  /* Banner mais horizontal e editorial: ~2.1:1. */
  .mm2-catalog-hero {
    aspect-ratio: 2.1 / 1;
    min-height: 0;
    border-radius: 12px;
    border-color: rgba(255, 255, 255, .085);
    background: #070708;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, .025),
      0 8px 28px rgba(0, 0, 0, .18);
  }

  .mm2-catalog-hero__inner {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
  }

  .mm2-catalog-hero__backdrop {
    background:
      linear-gradient(90deg,
        rgba(5, 5, 6, .995) 0%,
        rgba(5, 5, 6, .98) 35%,
        rgba(5, 5, 6, .91) 49%,
        rgba(5, 5, 6, .60) 64%,
        rgba(5, 5, 6, .17) 83%,
        rgba(5, 5, 6, .04) 100%),
      linear-gradient(0deg, rgba(5, 5, 6, .52), transparent 48%);
  }

  .mm2-catalog-hero__copy {
    position: relative;
    z-index: 3;
    grid-area: 1 / 1;
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 11px 12px 39px;
  }

  .mm2-catalog-hero__eyebrow {
    display: block;
    color: #9da1a8;
    font-size: 7.5px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .17em;
  }

  .mm2-catalog-hero__title {
    width: fit-content;
    margin: 6px 0 0;
    font-size: clamp(24px, 7.1vw, 30px);
    line-height: .88;
    letter-spacing: -.042em;
    text-shadow: 0 4px 16px rgba(0, 0, 0, .48);
  }

  .mm2-catalog-hero__description {
    display: -webkit-box;
    width: min(72%, 252px);
    max-width: none;
    margin: 7px 0 0;
    overflow: hidden;
    color: #b9bcc2;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  /* Mobile: mantém apenas um CTA auxiliar; benefícios e CTA principal são redundantes aqui. */
  .mm2-catalog-hero__benefits,
  .mm2-catalog-hero__primary {
    display: none !important;
  }

  .mm2-catalog-hero__actions {
    position: absolute;
    z-index: 6;
    right: auto;
    bottom: 7px;
    left: 10px;
    display: flex !important;
    width: auto;
    margin: 0;
    padding: 0;
    gap: 0;
  }

  .mm2-catalog-hero__secondary {
    display: inline-flex;
    width: auto;
    min-width: 104px;
    min-height: 30px;
    align-items: center;
    justify-content: center;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 9px;
    background: rgba(255, 255, 255, .035);
    color: #d5d7dc;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, .035),
      0 5px 14px rgba(0, 0, 0, .2);
    font-size: 8.5px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .01em;
    white-space: nowrap;
  }

  .mm2-catalog-hero__secondary::after {
    content: "›";
    margin-left: 6px;
    font-size: 11px;
    line-height: .8;
    opacity: .9;
  }

  /* Raridades ficam agrupadas na extrema direita do banner. */
  .mm2-catalog-hero__rarities {
    position: absolute;
    z-index: 6;
    right: 7px;
    bottom: 7px;
    left: auto;
    display: flex;
    width: auto;
    max-width: none;
    align-items: center;
    justify-content: flex-end;
    gap: 3px;
    overflow: visible;
    pointer-events: none;
  }

  .mm2-catalog-hero__rarities .m-box {
    flex: 0 0 auto;
    padding: 5px 6px;
    border-width: 1px;
    border-radius: 7px;
    background: rgba(7, 7, 8, .62);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
    font-size: 6.8px;
    font-weight: 820;
    letter-spacing: .02em;
    white-space: nowrap;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
  }

  .mm2-catalog-hero__rarities .m-box.chr {
    min-width: 38px;
    text-align: center;
  }

  /* Arte continua como fundo visual, porém menor e com mais respiro. */
  .mm2-catalog-hero__art {
    position: relative;
    z-index: 1;
    grid-area: 1 / 1;
    display: block;
    height: 100%;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
  }

  .mm2-catalog-hero__orbit {
    top: 50%;
    right: -9%;
    width: 300px;
    height: 218px;
    transform: translateY(-50%) scale(.72);
    transform-origin: center right;
  }

  /* Barra de categorias: menor, rápida de escanear e sem peso extra. */
  .mm2-catalog__toolbar {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin: 5px 0 6px;
    padding: 0 0 7px;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .055);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .mm2-category-chips {
    order: 2;
    width: 100%;
    max-width: 100%;
    gap: 5px;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .mm2-category-chips::-webkit-scrollbar {
    display: none;
  }

  .mm2-category-chip {
    min-height: 36px;
    gap: 5px;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 10px;
    font-weight: 760;
    touch-action: manipulation;
  }

  .mm2-category-chip > svg {
    width: 12px;
    height: 12px;
    flex-basis: 12px;
  }

  /* Busca ocupa o espaço útil; filtro permanece como ação compacta. */
  .mm2-catalog__controls {
    order: 1;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) 42px;
    gap: 6px;
  }

  .mm2-catalog-search,
  .mm2-mobile-filter-button {
    height: 42px;
    border-radius: 10px;
    background: #0e0f11;
  }

  .mm2-catalog-sort {
    display: none !important;
  }

  .mm2-catalog-search > svg {
    left: 10px;
    width: 14px;
    height: 14px;
  }

  .mm2-catalog-search input {
    min-width: 0;
    padding: 0 30px 0 31px;
    font-size: 11px;
  }

  .mm2-catalog-search button {
    right: 1px;
    width: 30px;
    height: 34px;
  }

  .mm2-mobile-filter-button {
    position: relative;
    width: 42px;
    min-width: 42px;
    gap: 0;
    padding: 0;
    touch-action: manipulation;
  }

  .mm2-mobile-filter-button > span:not([data-mm2-active-filter-count]) {
    display: none;
  }

  .mm2-mobile-filter-button > svg {
    width: 14px;
    height: 14px;
  }

  .mm2-mobile-filter-button [data-mm2-active-filter-count] {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 15px;
    height: 15px;
    padding: 0 3px;
    border: 2px solid #080909;
    font-size: 8px;
    line-height: 1;
  }

  .mm2-catalog-sort {
    width: 38px;
    min-width: 38px;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger {
    justify-content: center;
    gap: 0;
    padding: 0;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger [data-mm2-sort-value],
  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger .mm2-sort-mobile-label {
    display: none;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger > svg.mm2-sort-mobile-icon {
    display: block;
    width: 14px;
    height: 14px;
    flex-basis: 14px;
    color: currentColor;
  }

  .mm2-catalog-sort.is-enhanced .mm2-sort-trigger > svg.mm2-sort-desktop-icon {
    display: none;
  }

  /* Produtos encostam visualmente nos controles sem parecerem colados. */
  .mm2-products-grid {
    margin-top: 0;
    gap: 8px !important;
  }

  .mm2-catalog-hero__rarities {
    max-width: calc(100% - 14px);
    flex-wrap: nowrap;
  }

  .mm2-catalog-hero__rarities .m-box.chr {
    min-width: 38px;
    overflow: visible;
    border: 1px solid transparent;
    background: linear-gradient(#070708, #070708) padding-box, var(--c-grad) border-box;
  }

  .mm2-catalog-hero__rarities .m-box.chr::before {
    display: none;
  }

  .mm2-catalog-hero__rarities .m-box.chr span {
    background: var(--c-grad);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .mm2-filter-section--mobile-sort {
    display: block;
  }

  .mm2-mobile-sort {
    width: 100%;
    min-height: 40px;
    padding: 0 34px 0 11px;
    border: 1px solid var(--mm2-border);
    border-radius: 10px;
    appearance: none;
    -webkit-appearance: none;
    background: var(--mm2-control) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 11px center;
    color: #f1f2f3;
    font: inherit;
    font-size: 11px;
    font-weight: 700;
    color-scheme: dark;
  }

  .mm2-mobile-sort:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
  }

  @supports (-webkit-touch-callout: none) {
    .mm2-catalog-search input,
    .mm2-mobile-sort {
      font-size: 16px;
    }
  }

}

@media (max-width: 520px) {
  .mm2-catalog-hero__description {
    width: min(72%, 244px);
  }

  .mm2-catalog-hero__orbit {
    right: -12%;
    transform: translateY(-50%) scale(.68);
  }
}

@media (max-width: 359px) {
  .mm2-catalog-hero {
    min-height: 158px;
  }

  .mm2-catalog-hero__copy {
    padding: 9px 10px 34px;
  }

  .mm2-catalog-hero__title {
    margin-top: 5px;
    font-size: 23px;
  }

  .mm2-catalog-hero__description {
    width: min(72%, 232px);
    margin-top: 6px;
    font-size: 9.5px;
  }

  .mm2-catalog-hero__rarities {
    right: 7px;
    bottom: 6px;
    left: auto;
    gap: 2px;
    max-width: none;
  }

  .mm2-catalog-hero__rarities .m-box {
    padding: 4px 4px;
    font-size: 6px;
  }

  .mm2-catalog-hero__actions {
    right: auto;
    bottom: 6px;
    left: 8px;
    width: auto;
  }

  .mm2-catalog-hero__secondary {
    min-width: 96px;
    min-height: 28px;
    padding: 0 9px;
    font-size: 7.6px;
  }








  .mm2-catalog-hero__orbit {
    right: -18%;
    transform: translateY(-50%) scale(.62);
  }

  .mm2-category-chip {
    min-height: 36px;
    padding: 0 9px;
    font-size: 9.5px;
  }

  .mm2-catalog__controls {
    grid-template-columns: minmax(0, 1fr) 40px;
  }

  .mm2-catalog-search,
  .mm2-mobile-filter-button {
    height: 40px;
  }

  .mm2-mobile-filter-button {
    width: 40px;
    min-width: 40px;
  }

}

/* =========================================================
   MM2 · MOBILE — banner limpo + drawer de filtros compacto
   2026-09-18
   ========================================================= */
@media (max-width: 768px) {
  /* Reserva apenas a base necessária para as etiquetas de raridade. */
  .mm2-catalog-hero__copy {
    padding-bottom: 34px;
  }

  /* Bottom sheet menor e visualmente mais leve. */
  .mm2-catalog__sidebar {
    top: auto;
    right: 8px;
    bottom: max(8px, env(safe-area-inset-bottom));
    left: 8px;
    width: auto;
    height: auto;
    max-height: min(66vh, 560px);
    max-height: min(66dvh, 560px);
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(16, 17, 19, .96), rgba(10, 11, 12, .97));
    box-shadow: 0 18px 52px rgba(0, 0, 0, .42);
    transform: translateY(calc(100% + 18px));
  }

  .mm2-catalog__sidebar::before {
    top: 7px;
    width: 32px;
    height: 3px;
    background: rgba(255, 255, 255, .20);
  }

  .mm2-catalog__sidebar.is-open {
    transform: translateY(0);
  }

  .mm2-sidebar__header {
    min-height: 56px;
    padding: 8px 10px 0;
    border-bottom-color: rgba(255, 255, 255, .065);
    background: rgba(13, 14, 16, .88);
  }

  .mm2-sidebar__header h2 {
    font-size: 14px;
    font-weight: 760;
  }

  .mm2-sidebar__clear {
    min-height: 40px;
    margin-right: 0;
    font-size: 10px;
  }

  .mm2-sidebar__clear svg {
    width: 12px;
    height: 12px;
  }

  .mm2-sidebar__close {
    width: 40px;
    min-height: 40px;
    flex-basis: 40px;
    border-radius: 9px;
  }

  .mm2-sidebar__close svg {
    width: 15px;
    height: 15px;
  }

  .mm2-sidebar__body {
    padding-bottom: 4px;
  }

  .mm2-filter-section {
    padding: 10px 11px 11px;
  }

  .mm2-filter-section--price {
    padding-bottom: 9px;
  }

  .mm2-filter-section--stock {
    padding-top: 9px;
  }

  .mm2-filter-section + .mm2-filter-section {
    border-top-color: rgba(255, 255, 255, .055);
  }

  .mm2-filter-section__title {
    margin-bottom: 7px;
  }

  .mm2-filter-section__title h3 {
    font-size: 8.5px;
    letter-spacing: .07em;
  }

  .mm2-filter-categories,
  .mm2-price-presets {
    gap: 5px;
  }

  .mm2-filter-category {
    min-height: 36px;
    gap: 6px;
    padding: 0 9px;
    border-radius: 9px;
    font-size: 9.5px;
  }

  .mm2-filter-category > svg {
    width: 12px;
    height: 12px;
    flex: 0 0 12px;
  }

  .mm2-price-panel {
    gap: 6px;
  }

  .mm2-price-preset {
    height: 36px;
    padding: 0 7px;
    border-radius: 9px;
    font-size: 9.5px;
  }

  .mm2-availability-toggle {
    min-height: 40px;
    gap: 8px;
    padding: 7px 9px;
    border-radius: 10px;
  }

  .mm2-availability-toggle__main {
    gap: 7px;
    align-items: center;
  }

  .mm2-availability-toggle__icon {
    width: 13px;
    height: 13px;
    flex-basis: 13px;
    margin-top: 0;
  }

  .mm2-availability-toggle__copy {
    gap: 0;
  }

  .mm2-availability-toggle__label {
    font-size: 10px;
  }

  .mm2-availability-toggle__description {
    display: none;
  }

  .mm2-availability-toggle__switch {
    width: 31px;
    height: 18px;
    flex-basis: 31px;
  }

  .mm2-availability-toggle__switch > span {
    top: 3px;
    left: 3px;
    width: 10px;
    height: 10px;
    border-radius: 3px;
  }

  .mm2-availability-toggle:has(input:checked) .mm2-availability-toggle__switch > span {
    transform: translateX(13px);
  }

  .mm2-sidebar__mobile-footer {
    padding: 8px 10px max(8px, env(safe-area-inset-bottom));
    border-top-color: rgba(255, 255, 255, .065);
    background: rgba(11, 12, 13, .94);
  }

  .mm2-sidebar__mobile-footer button {
    min-height: 42px;
    border-radius: 9px;
    font-size: 11px;
  }

  .mm2-catalog__overlay {
    background: rgba(4, 5, 6, .52);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
  }
}

@media (max-width: 359px) {
  .mm2-catalog-hero__copy {
    padding-bottom: 32px;
  }

  .mm2-catalog__sidebar {
    right: 6px;
    bottom: max(6px, env(safe-area-inset-bottom));
    left: 6px;
    max-height: 70vh;
    max-height: 70dvh;
    border-radius: 16px;
  }
}
