/* Cleanex Showroom 0.10.23
   Clean rebuild: one state controller, real links as fallback, no 3D hit-testing on UI panels.
   Hero machine positions restored closer to the approved legacy showroom, with deterministic parallax. */

.cxsr-showroom,
.cxsr-showroom * { box-sizing: border-box; }

body.cleanex-showroom-page {
  min-height: 100vh;
  margin: 0;
  overflow: hidden;
  color: #fff;
  background: #02070d;
}

.cxsr-showroom {
  --cxsr-blue: #249cff;
  --cxsr-blue-strong: #078cff;
  --cxsr-panel: rgba(4, 17, 31, .88);
  --cxsr-panel-soft: rgba(7, 25, 44, .72);
  --cxsr-line: rgba(73, 165, 247, .24);
  --cxsr-muted: rgba(224, 236, 249, .72);
  --cxsr-ease: cubic-bezier(.22, 1, .36, 1);
  --cxsr-bg-base-x: 0px;
  --cxsr-bg-base-y: 0px;
  --cxsr-bg-parallax-x: 0px;
  --cxsr-bg-parallax-y: 0px;
  --cxsr-bg-scale: 1.035;
  --cxsr-left-px: 0px;
  --cxsr-left-py: 0px;
  --cxsr-right-px: 0px;
  --cxsr-right-py: 0px;
  --cxsr-left-hover-scale: 1;
  --cxsr-right-hover-scale: 1;
  --cxsr-left-hover-lift: 0px;
  --cxsr-right-hover-lift: 0px;
  --cxsr-hero-bottom: clamp(5.05rem, 8.05vh, 7rem);
  --cxsr-hero-width: min(39.75vw, 37.5rem);
  --cxsr-hero-opacity: 1;
  --cxsr-hero-inner-width: 118%;
  --cxsr-hero-left-image-x: 5%;
  --cxsr-hero-right-image-x: -5%;
  --cxsr-hero-reflection-left-x: 5%;
  --cxsr-hero-reflection-right-x: -5%;
  --cxsr-home-balance-shift: clamp(2.55rem, 4.8vh, 3.55rem);
  position: relative;
  width: 100%;
  min-height: 100vh;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #02070d;
}

.cxsr-showroom a { color: inherit; }
.cxsr-showroom button,
.cxsr-showroom input { font: inherit; }
.cxsr-showroom button { color: inherit; }
.cxsr-showroom [hidden] { display: none !important; }

.cxsr-background,
.cxsr-background__shade,
.cxsr-background__glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.cxsr-background { z-index: 0; overflow: hidden; }
.cxsr-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(.68) contrast(1.12) saturate(1.08);
  transform: translate3d(calc(var(--cxsr-bg-base-x) + var(--cxsr-bg-parallax-x)), calc(var(--cxsr-bg-base-y) + var(--cxsr-bg-parallax-y)), 0) scale(var(--cxsr-bg-scale));
  transition: transform .9s var(--cxsr-ease), filter .5s ease;
}
.cxsr-showroom[data-view="home"] {
  --cxsr-bg-base-x: 0px;
  --cxsr-bg-base-y: 0px;
  --cxsr-bg-scale: 1.035;
}
.cxsr-showroom[data-view="categories"] {
  --cxsr-bg-base-x: 0px;
  --cxsr-bg-base-y: 0px;
  --cxsr-bg-scale: 1.06;
}
.cxsr-showroom[data-view="category"] {
  --cxsr-bg-base-x: -.6%;
  --cxsr-bg-base-y: 0px;
  --cxsr-bg-scale: 1.075;
}
.cxsr-showroom[data-view="product"] {
  --cxsr-bg-base-x: 0px;
  --cxsr-bg-base-y: -.6%;
  --cxsr-bg-scale: 1.09;
}
.cxsr-background__shade {
  background:
    linear-gradient(90deg, rgba(0,0,0,.8), transparent 30%, transparent 70%, rgba(0,0,0,.78)),
    linear-gradient(180deg, rgba(0,0,0,.56), transparent 32%, rgba(0,0,0,.72));
}
.cxsr-background__glow {
  background: radial-gradient(circle at 50% 52%, rgba(31, 145, 246, .24), transparent 34rem);
}

.cxsr-showroom > .cleanex-global-header { position: absolute; }

.cxsr-breadcrumbs {
  position: absolute;
  z-index: 30;
  top: clamp(7.2rem, 13vh, 9.2rem);
  left: clamp(2rem, 6vw, 8rem);
  right: clamp(2rem, 6vw, 8rem);
  display: flex;
  align-items: center;
  gap: .75rem;
  min-width: 0;
  color: rgba(255,255,255,.72);
  font-size: .92rem;
}
.cxsr-breadcrumbs a { text-decoration: none; }
.cxsr-breadcrumbs a:hover,
.cxsr-breadcrumbs a:focus-visible { color: #fff; }
.cxsr-breadcrumbs strong { min-width: 0; overflow: hidden; color: #fff; text-overflow: ellipsis; white-space: nowrap; }

.cxsr-stage {
  position: relative;
  z-index: 10;
  width: 100%;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
}

.cxsr-view {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  transform: translateX(2rem);
  transition: opacity .32s ease, transform .52s var(--cxsr-ease), visibility .32s ease;
}
.cxsr-view.is-active,
.cxsr-view.is-entering,
.cxsr-view.is-leaving {
  visibility: visible;
}
.cxsr-view.is-active,
.cxsr-view.is-entering {
  z-index: 3;
  opacity: 1;
  transform: translateX(0);
}
.cxsr-view.is-leaving {
  z-index: 2;
  opacity: 0;
  transform: translateX(4rem);
  pointer-events: none;
}
.cxsr-view.is-entering { animation: cxsr-view-in .52s var(--cxsr-ease) both; }
@keyframes cxsr-view-in {
  from { opacity: 0; transform: translateX(-3rem); }
  to { opacity: 1; transform: translateX(0); }
}

.cxsr-kicker {
  margin: 0 0 .85rem;
  color: var(--cxsr-blue);
  font-size: clamp(.7rem, .85vw, .86rem);
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.cxsr-button {
  min-height: 3.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.3rem;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: .9rem;
  color: #fff;
  background: rgba(255,255,255,.055);
  text-decoration: none;
  font-weight: 900;
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.cxsr-button:hover,
.cxsr-button:focus-visible { transform: translateY(-2px); border-color: rgba(38,152,255,.6); }
.cxsr-button--primary {
  border-color: var(--cxsr-blue);
  background: var(--cxsr-blue);
  box-shadow: 0 1rem 2.5rem rgba(36,156,255,.22);
}
.cxsr-button--primary:hover,
.cxsr-button--primary:focus-visible { background: var(--cxsr-blue-strong); }

/* Home */
.cxsr-view--home {
  display: grid;
  place-items: center;
  padding: 8rem clamp(1.5rem, 4vw, 5rem) 2rem;
}
.cxsr-hero-copy {
  position: relative;
  z-index: 4;
  width: min(59rem, 72vw);
  text-align: center;
  transform: translateY(calc(-1 * var(--cxsr-home-balance-shift)));
}
.cxsr-hero-copy h1 {
  margin: 0;
  font-size: clamp(3.2rem, 6.6vw, 7.2rem);
  line-height: .88;
  letter-spacing: -.07em;
}
.cxsr-hero-copy h1 span { color: var(--cxsr-blue); }
.cxsr-hero-copy > p:not(.cxsr-kicker) {
  max-width: 52rem;
  margin: 1.25rem auto 0;
  color: var(--cxsr-muted);
  font-size: clamp(.95rem, 1.15vw, 1.18rem);
  line-height: 1.55;
}
.cxsr-hero-actions {
  display: flex;
  justify-content: center;
  gap: .85rem;
  margin-top: 1.7rem;
}
.cxsr-hero-machines {
  position: absolute;
  z-index: 2;
  bottom: var(--cxsr-hero-bottom);
  width: var(--cxsr-hero-width);
  opacity: var(--cxsr-hero-opacity);
  pointer-events: none;
  will-change: transform;
  transition: opacity .35s ease;
}
.cxsr-hero-machines--left {
  left: clamp(-2.25rem, -1.2vw, -.85rem);
  transform: translate3d(var(--cxsr-left-px), calc(var(--cxsr-left-py) + 2.2rem + 100px), 0);
}
.cxsr-hero-machines--right {
  right: clamp(-2.25rem, -1.2vw, -.85rem);
  transform: translate3d(var(--cxsr-right-px), var(--cxsr-right-py), 0);
}
.cxsr-hero-machines::before {
  content: '';
  position: absolute;
  z-index: 1;
  left: 16%;
  right: 16%;
  bottom: 1.2rem;
  height: clamp(2.7rem, 7.6vh, 4.3rem);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.78) 0%, rgba(0,0,0,.46) 48%, rgba(0,0,0,0) 78%);
  filter: blur(26px);
  opacity: .74;
}
.cxsr-hero-machines::after {
  content: '';
  position: absolute;
  z-index: 0;
  left: 20%;
  right: 20%;
  bottom: .85rem;
  height: clamp(2.6rem, 6vh, 3.9rem);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(34, 148, 255, .17), rgba(34, 148, 255, 0));
  filter: blur(36px);
  opacity: .7;
}
.cxsr-hero-machines > img:first-child {
  position: relative;
  z-index: 3;
  display: block;
  width: var(--cxsr-hero-inner-width);
  filter: drop-shadow(0 .3rem .3rem rgba(4,8,14,.92)) drop-shadow(0 1.6rem 1.8rem rgba(0,0,0,.48));
  will-change: transform, filter;
  transition: transform 145ms cubic-bezier(.2,.8,.2,1), filter 145ms ease-out;
}
.cxsr-hero-machines--left > img:first-child {
  transform: translate3d(var(--cxsr-hero-left-image-x), var(--cxsr-left-hover-lift), 0) scale(var(--cxsr-left-hover-scale));
}
.cxsr-hero-machines--right > img:first-child {
  transform: translate3d(var(--cxsr-hero-right-image-x), var(--cxsr-right-hover-lift), 0) scale(var(--cxsr-right-hover-scale));
}
.cxsr-showroom[data-machine-hover="left"] { --cxsr-left-hover-scale: 1.065; --cxsr-left-hover-lift: -8px; }
.cxsr-showroom[data-machine-hover="right"] { --cxsr-right-hover-scale: 1.065; --cxsr-right-hover-lift: -8px; }
.cxsr-showroom[data-machine-hover="left"] .cxsr-hero-machines--left > img:first-child,
.cxsr-showroom[data-machine-hover="right"] .cxsr-hero-machines--right > img:first-child {
  filter: drop-shadow(0 .42rem .4rem rgba(4,8,14,.96)) drop-shadow(0 2.25rem 2.35rem rgba(0,0,0,.62)) drop-shadow(0 0 1.7rem rgba(36,156,255,.2));
}
.cxsr-hero-machines .cxsr-reflection {
  position: absolute;
  z-index: 2;
  bottom: 0;
  display: block;
  width: var(--cxsr-hero-inner-width);
  opacity: .56;
  filter: blur(.65px);
  transform-origin: top center;
}
.cxsr-hero-machines--left .cxsr-reflection {
  left: 0;
  transform: translate3d(var(--cxsr-hero-reflection-left-x), 0, 0) scale(1);
}
.cxsr-hero-machines--right .cxsr-reflection {
  right: 0;
  transform: translate3d(var(--cxsr-hero-reflection-right-x), 0, 0) scale(1);
}


/* Home application strip restored from the original showroom. */
.cxsr-industry-strip {
  position: absolute;
  z-index: 7;
  left: clamp(1rem, 2.1vw, 2.4rem);
  right: clamp(1rem, 2.1vw, 2.4rem);
  bottom: calc(clamp(.7rem, 1.5vh, 1.2rem) + var(--cxsr-home-balance-shift));
  min-height: 4.8rem;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgba(105,185,255,.2);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(4,16,29,.88), rgba(6,24,42,.76));
  box-shadow: 0 1.2rem 3.5rem rgba(0,0,0,.24);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  overflow: hidden;
  pointer-events: none;
}
.cxsr-industry-strip article {
  min-width: 0;
  display: grid;
  grid-template-columns: 2.25rem minmax(0,1fr);
  align-items: center;
  gap: .85rem;
  padding: .72rem clamp(.8rem, 1.3vw, 1.45rem);
  border-left: 1px solid rgba(255,255,255,.08);
}
.cxsr-industry-strip article:first-child { border-left: 0; }
.cxsr-industry-strip__icon {
  width: 2.25rem;
  height: 2.25rem;
  display: grid;
  place-items: center;
  border: 1px solid rgba(36,156,255,.3);
  border-radius: .7rem;
  color: rgba(195,228,255,.9);
  background: rgba(36,156,255,.08);
}
.cxsr-industry-strip__icon svg {
  width: 1.35rem;
  height: 1.35rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.cxsr-industry-strip__content {
  min-width: 0;
  display: grid;
  gap: .12rem;
}
.cxsr-industry-strip strong {
  overflow: hidden;
  color: #fff;
  font-size: clamp(.78rem, .9vw, .95rem);
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cxsr-industry-strip__content > span {
  overflow: hidden;
  color: rgba(224,236,249,.62);
  font-size: clamp(.66rem, .75vw, .8rem);
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Categories */
.cxsr-view--categories {
  display: grid;
  grid-template-rows: auto 1fr;
  align-items: end;
  padding: clamp(9rem, 15vh, 11rem) clamp(1rem, 2vw, 2.2rem) clamp(3rem, 6vh, 5.2rem);
}
.cxsr-section-heading {
  align-self: center;
  width: min(78rem, 96vw);
  margin: 0 auto 1.5rem;
  text-align: center;
}
.cxsr-section-heading h1 {
  margin: 0;
  font-size: clamp(3.35rem, 6vw, 6.7rem);
  line-height: .92;
  letter-spacing: -.065em;
}
.cxsr-section-heading > p:last-child {
  max-width: 68rem;
  margin: 1rem auto 0;
  color: var(--cxsr-muted);
  font-size: clamp(1rem, 1.2vw, 1.2rem);
  line-height: 1.55;
}
.cxsr-category-carousel {
  position: relative;
  min-width: 0;
  width: min(100%, 100rem);
  height: clamp(29rem, 52vh, 39rem);
  margin: 0 auto;
  padding: 0 clamp(3.6rem, 7vw, 6.5rem) 3.25rem;
  transform: translateY(clamp(-4.4rem, -6.6vh, -3.4rem));
}
.cxsr-category-viewport {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
  perspective: 1800px;
  perspective-origin: 50% 72%;
  touch-action: pan-y;
  user-select: none;
  cursor: default;
}
.cxsr-category-viewport.is-dragging { cursor: default; }
.cxsr-category-grid {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
}
.cxsr-category-carousel::before {
  content: '';
  position: absolute;
  z-index: 0;
  left: 11%;
  right: 11%;
  bottom: 3.2rem;
  height: clamp(8rem, 15vh, 11rem);
  border: 1px solid rgba(55, 154, 239, .11);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(25, 133, 224, .10) 0%, rgba(10, 57, 102, .045) 45%, rgba(0, 0, 0, 0) 74%);
  box-shadow: inset 0 0 4rem rgba(38, 152, 255, .035);
  transform: perspective(900px) rotateX(72deg);
  transform-origin: center bottom;
  pointer-events: none;
}
.cxsr-carousel-arrow {
  position: absolute;
  top: 50%;
  z-index: 420;
  width: 3.5rem;
  height: 3.5rem;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(38,152,255,.48);
  border-radius: 999px;
  color: #7dc0ff;
  background: linear-gradient(180deg, rgba(7,20,34,.94), rgba(8,22,38,.82));
  box-shadow: 0 0 0 1px rgba(255,255,255,.03) inset, 0 12px 26px rgba(0,0,0,.28);
  transform: translateY(-50%);
  transition: transform .24s var(--cxsr-ease), border-color .24s ease, box-shadow .24s ease, color .24s ease, background .24s ease;
  cursor: pointer;
}
.cxsr-carousel-arrow svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.cxsr-carousel-arrow--prev { left: 0; }
.cxsr-carousel-arrow--next { right: 0; }
.cxsr-carousel-arrow:hover,
.cxsr-carousel-arrow:focus-visible {
  color: #fff;
  border-color: rgba(38,152,255,.78);
  box-shadow: 0 0 0 1px rgba(255,255,255,.04) inset, 0 16px 34px rgba(0,0,0,.35), 0 0 24px rgba(38,152,255,.18);
  transform: translateY(-50%) scale(1.06);
  outline: none;
}
/* v0.10.22: continuous circular depth path without rear-position jumps.
   The front machine is lowered toward the former control position.
   Rear machines move behind the front card on stable, continuously interpolated paths. */
.cxsr-category-card {
  --cxsr-card-x: 0px;
  --cxsr-card-y: 0px;
  --cxsr-card-scale: 1;
  --cxsr-card-rotate: 0deg;
  --cxsr-card-tilt: 0deg;
  --cxsr-card-opacity: 1;
  --cxsr-card-z: 1;
  --cxsr-card-depth: 0px;
  --cxsr-card-label-opacity: 1;
  position: absolute;
  left: 50%;
  bottom: .3rem;
  width: clamp(12rem, 15.2vw, 17.2rem);
  min-height: clamp(17rem, 32vh, 22rem);
  display: grid;
  grid-template-rows: 1fr auto auto;
  align-items: end;
  padding: .75rem .75rem 0;
  border-radius: 1.2rem;
  text-align: center;
  text-decoration: none;
  overflow: visible;
  opacity: var(--cxsr-card-opacity);
  z-index: var(--cxsr-card-z);
  transform: translateX(-50%) translate3d(var(--cxsr-card-x), var(--cxsr-card-y), 0) scale(var(--cxsr-card-scale));
  transform-style: preserve-3d;
  transform-origin: center bottom;
  filter: none;
  transition: background .24s ease;
  will-change: transform, opacity;
  pointer-events: auto;
  cursor: pointer;
}
.cxsr-category-card > * { pointer-events: none; }
.cxsr-category-card::after {
  content: '';
  position: absolute;
  left: 18%;
  right: 18%;
  bottom: 2rem;
  height: 1.2rem;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.42) 0%, rgba(0,0,0,.18) 50%, rgba(0,0,0,0) 78%);
  filter: blur(10px);
  opacity: calc(.22 + (var(--cxsr-card-scale) - .55) * .85);
  pointer-events: none;
}
.cxsr-category-card:hover,
.cxsr-category-card:focus-visible { outline: none; }
.cxsr-category-card.is-front:hover,
.cxsr-category-card.is-front:focus-visible {
  transform: translateX(-50%) translate3d(var(--cxsr-card-x), var(--cxsr-card-y), 0) scale(var(--cxsr-card-scale));
}
.cxsr-category-card__visual {
  min-height: 0;
  display: grid;
  place-items: end center;
}
.cxsr-category-card__visual img {
  width: min(100%, 18.5rem);
  max-height: clamp(14rem, 32vh, 23rem);
  object-fit: contain;
  object-position: center bottom;
  background: transparent !important;
  image-rendering: auto;
  filter: drop-shadow(0 1.45rem 1.15rem rgba(0,0,0,.58));
  transition: transform .34s var(--cxsr-ease), filter .34s ease;
  pointer-events: none;
}
.cxsr-category-card.is-front .cxsr-category-card__visual img {
  filter: drop-shadow(0 1.95rem 1.6rem rgba(0,0,0,.72)) drop-shadow(0 0 1.1rem rgba(38,152,255,.12));
}
.cxsr-category-card.is-front:hover img,
.cxsr-category-card.is-front:focus-visible img { transform: scale(1.04); }
.cxsr-category-card strong,
.cxsr-category-card small {
  opacity: var(--cxsr-card-label-opacity);
  transition: none;
}
.cxsr-category-card strong { min-height: 2.55rem; display: grid; place-items: center; font-size: clamp(.92rem, 1.15vw, 1.1rem); line-height: 1.15; }
.cxsr-category-card small { min-height: 1.7rem; color: rgba(224,236,249,.6); font-size: .72rem; }

/* Category detail */
.cxsr-view--category {
  display: grid;
  grid-template-columns: minmax(22rem, .85fr) minmax(20rem, .7fr);
  grid-template-rows: minmax(0, 1fr) auto;
  gap: clamp(1.5rem, 3vw, 3rem);
  align-items: center;
  padding: clamp(9.5rem, 15vh, 11rem) clamp(2rem, 7vw, 8rem) clamp(2rem, 5vh, 4rem);
}
.cxsr-category-intro { position: relative; z-index: 3; align-self: center; max-width: 47rem; }
.cxsr-back-link {
  display: inline-flex;
  margin-bottom: 1.2rem;
  color: rgba(255,255,255,.68);
  text-decoration: none;
  font-weight: 800;
}
.cxsr-back-link:hover,
.cxsr-back-link:focus-visible { color: #fff; }
.cxsr-category-intro h1,
.cxsr-product-copy h1 {
  margin: 0;
  font-size: clamp(3.4rem, 6vw, 6.7rem);
  line-height: .9;
  letter-spacing: -.065em;
}
.cxsr-category-intro > p:last-child,
.cxsr-product-copy > p[data-cxsr-product-description] {
  max-width: 46rem;
  margin: 1.15rem 0 0;
  color: var(--cxsr-muted);
  font-size: clamp(1rem, 1.2vw, 1.2rem);
  line-height: 1.55;
}
.cxsr-category-visual {
  position: relative;
  align-self: center;
  justify-self: center;
  width: min(34vw, 34rem);
  pointer-events: none;
}
.cxsr-category-visual::after {
  content: '';
  position: absolute;
  left: 10%; right: 10%; bottom: 4%;
  height: 12%;
  border-radius: 50%;
  background: rgba(0,0,0,.65);
  filter: blur(1rem);
}
.cxsr-category-visual img { position: relative; z-index: 1; display: block; width: 100%; max-height: 49vh; margin-inline: auto; object-fit: contain; object-position: center bottom; filter: drop-shadow(0 2rem 2rem rgba(0,0,0,.62)); }
.cxsr-category-visual[data-category-slug="zamiatarki"] img,
.cxsr-category-visual[data-category-slug="zamiatarka"] img {
  width: 106%;
  max-width: 106%;
  transform: translateX(1.5%);
}
.cxsr-product-picker {
  position: relative;
  z-index: 30;
  grid-column: 1 / -1;
  min-width: 0;
  padding: 1rem;
  overflow: visible;
  border: 1px solid var(--cxsr-line);
  border-radius: 1.35rem;
  background: linear-gradient(135deg, rgba(3,15,28,.92), rgba(7,26,45,.76));
  box-shadow: 0 1.6rem 4rem rgba(0,0,0,.26);
  backdrop-filter: blur(16px);
}
.cxsr-product-picker > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .75rem;
  padding: 0 .2rem;
}
.cxsr-product-picker > header span { color: rgba(224,236,249,.55); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.cxsr-product-picker > header strong { font-size: 1.02rem; }
.cxsr-product-picker__body {
  position: relative;
  min-width: 0;
  overflow: visible;
  padding-inline: 0;
}
.cxsr-product-picker__body.has-navigation { padding-inline: 3.35rem; }
.cxsr-product-card-grid {
  --cxsr-product-visible: 1;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(var(--cxsr-product-visible), minmax(17rem, 30rem));
  justify-content: center;
  align-items: stretch;
  gap: .75rem;
  width: 100%;
  min-width: 0;
  overflow: visible;
}
.cxsr-product-card {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 30rem;
  min-width: 0;
  display: grid;
  grid-template-columns: 5.7rem minmax(0, 1fr) 2.2rem;
  align-items: center;
  gap: .85rem;
  padding: .72rem;
  overflow: visible;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 1rem;
  color: #fff;
  background: rgba(255,255,255,.035);
  text-decoration: none;
  transform-origin: center bottom;
  transition: transform .22s var(--cxsr-ease), border-color .2s ease, background .2s ease, box-shadow .22s ease;
  will-change: transform;
}
.cxsr-product-card:hover,
.cxsr-product-card:focus-visible {
  z-index: 999;
  transform: translateY(-.72rem) scale(1.035);
  border-color: rgba(38,152,255,.62);
  background: rgba(38,152,255,.12);
  box-shadow: 0 1.25rem 2.8rem rgba(0,0,0,.42), 0 0 0 1px rgba(38,152,255,.18);
  outline: none;
}
.cxsr-product-card--button { width: 100%; text-align: left; cursor: pointer; }
.cxsr-product-card.is-active,
.cxsr-product-card--button.is-active { border-color: rgba(38,152,255,.62); background: rgba(38,152,255,.12); box-shadow: 0 1.25rem 2.8rem rgba(0,0,0,.34), 0 0 0 1px rgba(38,152,255,.22); }
.cxsr-product-card__image {
  position: relative;
  width: 5.7rem;
  min-height: 5.4rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  align-self: end;
  overflow: visible;
  border-radius: .75rem;
  background: rgba(255,255,255,.035);
}
.cxsr-product-card__image img {
  position: relative;
  display: block;
  width: auto;
  height: auto;
  max-width: 118%;
  max-height: 6.8rem;
  object-fit: contain;
  object-position: center bottom;
  transform: translateY(.42rem);
  filter: drop-shadow(0 .45rem .65rem rgba(0,0,0,.32));
}
.cxsr-product-card__image.is-portrait img {
  max-width: 124%;
  max-height: 7.8rem;
  transform: translateY(.52rem);
}
.cxsr-product-card__image.is-wide img {
  max-width: 126%;
  max-height: 6rem;
  transform: translateY(.28rem);
}
.cxsr-product-card__body { min-width: 0; display: grid; gap: .15rem; }
.cxsr-product-card__body small { color: rgba(224,236,249,.5); font-size: .66rem; }
.cxsr-product-card__body strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cxsr-product-card__body em { color: #fff; font-style: normal; font-weight: 900; }
.cxsr-product-card__body i { color: rgba(224,236,249,.58); font-size: .68rem; font-style: normal; }
.cxsr-product-card > b { width: 2rem; height: 2rem; display: grid; place-items: center; border: 1px solid rgba(38,152,255,.3); border-radius: 999px; color: var(--cxsr-blue); }
.cxsr-product-card-grid:empty::after { content: 'Brak opublikowanych maszyn w tej kategorii.'; display: block; padding: 1rem; color: var(--cxsr-muted); }
.cxsr-product-picker__arrow {
  position: absolute;
  top: 50%;
  z-index: 1100;
  width: 2.7rem;
  height: 2.7rem;
  display: grid;
  place-items: center;
  border: 1px solid rgba(38,152,255,.5);
  border-radius: 999px;
  color: #8dccff;
  background: rgba(4,17,31,.96);
  box-shadow: 0 .8rem 1.8rem rgba(0,0,0,.3);
  transform: translateY(-50%);
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease;
}
.cxsr-product-picker__arrow--prev { left: .15rem; }
.cxsr-product-picker__arrow--next { right: .15rem; }
.cxsr-product-picker__arrow svg { width: 1.05rem; height: 1.05rem; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.cxsr-product-picker__arrow:hover,
.cxsr-product-picker__arrow:focus-visible { color: #fff; border-color: var(--cxsr-blue); transform: translateY(-50%) scale(1.08); outline: none; }
.cxsr-product-picker__arrow:disabled { opacity: .28; cursor: default; transform: translateY(-50%); }

/* Product */
.cxsr-view--product {
  display: grid;
  grid-template-columns: minmax(15rem, .58fr) minmax(24rem, 1fr) minmax(25rem, .95fr);
  grid-template-rows: minmax(0, 1fr) auto;
  gap: clamp(1.3rem, 2.2vw, 2.4rem);
  align-items: center;
  padding: clamp(9.5rem, 15vh, 11rem) clamp(2rem, 5vw, 6rem) clamp(2rem, 4.5vh, 3.6rem);
}
.cxsr-spec-card {
  --cxsr-spec-tilt-x: 0deg;
  --cxsr-spec-tilt-y: 8deg;
  align-self: center;
  padding: clamp(1.2rem, 2vw, 1.7rem);
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 1.35rem;
  color: #13243a;
  background: linear-gradient(160deg, rgba(250,253,255,.96), rgba(222,233,245,.94));
  box-shadow: 0 1.5rem 4rem rgba(0,0,0,.28);
  transform-style: preserve-3d;
  transform: perspective(1200px) rotateX(var(--cxsr-spec-tilt-x)) rotateY(var(--cxsr-spec-tilt-y));
  transition: transform .26s var(--cxsr-ease), box-shadow .26s var(--cxsr-ease);
}
.cxsr-spec-card h2 { margin: 0 0 .8rem; color: #3a4d65; font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
.cxsr-spec-panel[hidden] { display: none !important; }
.cxsr-spec-card dl { margin: 0; }
.cxsr-spec-card dl div { padding: .65rem 0; border-top: 1px solid rgba(20,50,80,.14); }
.cxsr-spec-card dt { color: #60728a; font-size: .78rem; }
.cxsr-spec-card dd { margin: .2rem 0 0; color: #078cff; font-size: 1.05rem; font-weight: 950; }
.cxsr-product-machine { position: relative; align-self: center; justify-self: center; width: min(38vw, 43rem); min-height: 42vh; display: grid; place-items: center; overflow: visible; pointer-events: none; }
.cxsr-product-machine img { position: relative; z-index: 2; max-width: 100%; max-height: 54vh; object-fit: contain; filter: drop-shadow(0 2rem 2rem rgba(0,0,0,.62)); animation: none; }
.cxsr-product-machine img.is-initial-enter { animation: cxsr-machine-enter .56s var(--cxsr-ease) both; }
.cxsr-product-machine img.is-entering-left { animation: cxsr-machine-swap-in .62s var(--cxsr-ease) both; }
.cxsr-product-machine img.is-leaving-right { position: absolute; inset: 0; margin: auto; pointer-events: none; animation: cxsr-machine-swap-out .62s var(--cxsr-ease) both; }
@keyframes cxsr-machine-enter { from { opacity: 0; transform: translate3d(-18%,0,0); } to { opacity: 1; transform: translate3d(0,0,0); } }
@keyframes cxsr-machine-swap-in { from { opacity: .02; transform: translate3d(-112%,0,0); } to { opacity: 1; transform: translate3d(0,0,0); } }
@keyframes cxsr-machine-swap-out { from { opacity: 1; transform: translate3d(0,0,0); } to { opacity: .02; transform: translate3d(112%,0,0); } }
.cxsr-product-shadow { position: absolute; z-index: 1; left: 14%; right: 14%; bottom: 11%; height: 9%; border-radius: 50%; background: rgba(0,0,0,.68); filter: blur(1.2rem); }
.cxsr-product-copy { align-self: center; min-width: 0; }
.cxsr-product-copy h1 { font-size: clamp(3rem, 5vw, 5.9rem); }
.cxsr-mode-switch { display: inline-flex; gap: .2rem; margin-bottom: 1.1rem; padding: .25rem; border: 1px solid rgba(255,255,255,.11); border-radius: .85rem; background: rgba(2,9,18,.5); }
.cxsr-mode-switch a { padding: .55rem .8rem; border-radius: .62rem; color: rgba(255,255,255,.62); text-decoration: none; font-size: .78rem; font-weight: 900; }
.cxsr-mode-switch a.is-active { color: #fff; background: rgba(38,152,255,.18); }
.cxsr-rental-plan { display: grid; grid-template-columns: repeat(2, 1fr); gap: .45rem; margin: 1rem 0; }
.cxsr-rental-plan button { padding: .7rem; border: 1px solid rgba(255,255,255,.11); border-radius: .8rem; background: rgba(255,255,255,.035); cursor: pointer; }
.cxsr-rental-plan button span,
.cxsr-rental-plan button small { display: block; }
.cxsr-rental-plan button span { font-weight: 900; }
.cxsr-rental-plan button small { margin-top: .2rem; color: rgba(224,236,249,.56); }
.cxsr-rental-plan button.is-active { border-color: rgba(38,152,255,.55); background: rgba(38,152,255,.12); }
.cxsr-price { display: flex; align-items: baseline; gap: .65rem; margin-top: 1.25rem; }
.cxsr-price > span { color: rgba(224,236,249,.62); }
.cxsr-price strong { color: var(--cxsr-blue); font-size: clamp(2.9rem, 4.8vw, 5.8rem); line-height: .9; letter-spacing: -.045em; }
.cxsr-price-meta { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: .7rem; color: rgba(224,236,249,.62); font-size: .78rem; }
.cxsr-order-form { margin-top: 1.25rem; }
.cxsr-actions { display: flex; flex-wrap: wrap; gap: .7rem; }
.cxsr-date-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .65rem; margin-bottom: .75rem; }
.cxsr-date-grid label { display: grid; gap: .3rem; color: rgba(224,236,249,.62); font-size: .72rem; font-weight: 800; }
.cxsr-date-grid input { min-height: 3.1rem; padding: 0 .8rem; border: 1px solid rgba(255,255,255,.13); border-radius: .8rem; color: #fff; background: rgba(2,9,18,.7); color-scheme: dark; }
.cxsr-note,
.cxcp-rec-add-status { display: block; margin-top: .65rem; color: rgba(224,236,249,.58); font-size: .72rem; line-height: 1.4; }
.cxcp-rec-add-status:not(:empty) { color: #8fceff; }
.cxsr-accessory-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .45rem; margin-bottom: .9rem; }
.cxsr-accessory-tabs button { min-height: 2.8rem; padding: .6rem .55rem; border: 1px solid rgba(20,50,80,.14); border-radius: .82rem; color: #425870; background: rgba(255,255,255,.42); font-size: .74rem; font-weight: 900; cursor: pointer; transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease; }
.cxsr-accessory-tabs button:hover,
.cxsr-accessory-tabs button:focus-visible,
.cxsr-accessory-tabs button.is-active { color: #0a84ff; border-color: rgba(10,132,255,.34); background: rgba(10,132,255,.12); outline: none; transform: translateY(-1px); }
.cxsr-accessory-panel-copy { display: grid; gap: .55rem; padding-top: .2rem; color: #41566c; font-size: .9rem; line-height: 1.55; }
.cxsr-accessory-panel-copy strong { color: #16314c; font-size: 1rem; }
.cxsr-accessory-panel-copy p { margin: 0; }

.cxsr-spec-card {
  position: relative;
  z-index: 5;
  isolation: isolate;
  will-change: transform;
}
.cxsr-spec-card,
.cxsr-spec-card * {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.cxsr-spec-panel,
.cxsr-accessory-tabs,
.cxsr-accessory-panel-copy {
  position: relative;
  z-index: 2;
  transform: translateZ(0);
}
.cxsr-accessory-tabs button,
.cxsr-mode-switch a,
.cxsr-actions .cxsr-button {
  position: relative;
  z-index: 3;
}
.cxsr-product-card__image--accessory {
  background: linear-gradient(160deg, rgba(14,32,52,.75), rgba(8,20,34,.82));
  border: 1px solid rgba(38,152,255,.16);
}
.cxsr-product-card__image--accessory img,
.cxsr-product-card__image--accessory.is-portrait img,
.cxsr-product-card__image--accessory.is-wide img {
  max-width: 100%;
  max-height: 5.7rem;
  transform: translateY(.18rem);
  filter: drop-shadow(0 .35rem .5rem rgba(0,0,0,.22));
}
.cxsr-product-copy {
  justify-self: start;
  max-width: min(100%, 39rem);
  padding-right: clamp(.5rem, 1.6vw, 1.25rem);
}
.cxsr-product-copy h1 {
  font-size: clamp(2.65rem, 4.4vw, 4.95rem);
  line-height: .92;
  letter-spacing: -.05em;
  max-width: 11ch;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
.cxsr-product-rail {
  grid-column: 1 / -1;
  min-width: 0;
  display: flex;
  gap: .6rem;
  overflow-x: auto;
  padding: .55rem;
  border: 1px solid var(--cxsr-line);
  border-radius: 1rem;
  background: rgba(3,15,28,.72);
  scrollbar-width: thin;
  scrollbar-color: rgba(38,152,255,.42) transparent;
}
.cxsr-rail-item {
  min-width: 13rem;
  display: grid;
  grid-template-columns: 3.5rem minmax(0,1fr);
  align-items: center;
  gap: .65rem;
  padding: .55rem .65rem;
  border: 1px solid transparent;
  border-radius: .8rem;
  color: #fff;
  background: transparent;
  text-decoration: none;
}
.cxsr-rail-item:hover,
.cxsr-rail-item:focus-visible,
.cxsr-rail-item.is-active { border-color: rgba(38,152,255,.4); background: rgba(38,152,255,.09); outline: none; }
.cxsr-rail-item img { width: 3.5rem; height: 3rem; object-fit: contain; }
.cxsr-rail-item span { min-width: 0; }
.cxsr-rail-item small,
.cxsr-rail-item strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cxsr-rail-item small { color: rgba(224,236,249,.5); font-size: .65rem; }
.cxsr-rail-item strong { margin-top: .1rem; font-size: .82rem; }

.cxsr-noscript { position: fixed; z-index: 1200; left: 1rem; right: 1rem; bottom: 1rem; padding: .9rem; border-radius: .8rem; color: #fff; background: #0b1c2c; text-align: center; }

@media (max-width: 1280px) {
  .cxsr-view--product { grid-template-columns: minmax(13rem,.5fr) minmax(20rem,.9fr) minmax(23rem,1fr); gap: 1rem; padding-left: 2rem; padding-right: 2rem; }
  .cxsr-view--category { padding-left: 3rem; padding-right: 3rem; }
}


@media (max-width: 1180px) {
  .cxsr-industry-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(46rem, calc(100% - 2rem));
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
  .cxsr-industry-strip article:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.08); }
  .cxsr-industry-strip article:nth-child(4) { border-top: 1px solid rgba(255,255,255,.08); }
}

@media (max-width: 1080px) {
  body.cleanex-showroom-page { overflow-y: auto; }
  .cxsr-showroom { min-height: 100svh; overflow-x: hidden; overflow-y: auto; }
  .cxsr-stage { height: auto; min-height: 100svh; overflow: visible; }
  .cxsr-view { position: relative; inset: auto; min-height: 100svh; }
  .cxsr-view--home { padding-top: 7rem; }
  .cxsr-hero-copy { width: min(48rem, 90vw); }
  .cxsr-showroom { --cxsr-home-balance-shift: clamp(1.25rem, 2.6vh, 1.9rem); }
  .cxsr-showroom { --cxsr-hero-width: min(36vw, 27rem); --cxsr-hero-bottom: clamp(4.5rem, 7vh, 5.8rem); }
  .cxsr-hero-machines { opacity: .84; }
  .cxsr-view--categories { padding-top: 8rem; }
  .cxsr-category-carousel { height: clamp(27rem, 47vh, 33rem); padding: 0 3.3rem 5rem; transform: translateY(-2.6rem); }
  .cxsr-view--category { grid-template-columns: 1fr minmax(15rem,.55fr); padding: 8.5rem 2rem 2rem; }
  .cxsr-category-intro h1 { font-size: clamp(3rem, 8vw, 5.5rem); }
  .cxsr-category-visual { width: min(35vw, 23rem); }
  .cxsr-view--product { grid-template-columns: minmax(12rem,.55fr) minmax(0,1fr); grid-template-rows: auto auto auto; padding: 9rem 2rem 2rem; }
  .cxsr-product-machine { width: min(48vw, 33rem); min-height: 34vh; }
  .cxsr-product-copy { grid-column: 1 / -1; }
  .cxsr-product-rail { grid-row: 3; }
  .cxsr-breadcrumbs { top: 6.5rem; left: 1.4rem; right: 1.4rem; font-size: .78rem; }
}


@media (max-width: 720px) {
  .cxsr-industry-strip {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    width: 100%;
    grid-template-columns: repeat(4, minmax(11.5rem, 1fr));
    margin-top: auto;
    overflow-x: auto;
    transform: none;
    border-radius: .95rem;
    scrollbar-width: none;
    pointer-events: auto;
  }
  .cxsr-industry-strip::-webkit-scrollbar { display: none; }
  .cxsr-industry-strip article,
  .cxsr-industry-strip article:nth-child(3),
  .cxsr-industry-strip article:nth-child(4) { border-top: 0; }
  .cxsr-industry-strip article { min-height: 4.4rem; }
}

@media (max-width: 720px) {
  .cxsr-view--home { min-height: 100svh; padding: 6.7rem 1rem 2rem; }
  .cxsr-showroom { --cxsr-home-balance-shift: 0rem; }
  .cxsr-hero-copy { width: 100%; }
  .cxsr-hero-copy h1 { font-size: clamp(3rem, 14vw, 5rem); }
  .cxsr-hero-copy > p:not(.cxsr-kicker) { font-size: .92rem; }
  .cxsr-hero-actions { flex-direction: column; align-items: stretch; width: min(22rem, 100%); margin-left: auto; margin-right: auto; }
  .cxsr-showroom { --cxsr-hero-width: min(45vw, 18rem); --cxsr-hero-bottom: clamp(1.1rem, 2.4vh, 1.6rem); --cxsr-hero-inner-width: 112%; }
  .cxsr-hero-machines { opacity: .44; }
  .cxsr-hero-machines--left { left: -12%; }
  .cxsr-hero-machines--right { right: -12%; }
  .cxsr-hero-machines::before { left: 18%; right: 18%; bottom: .55rem; }
  .cxsr-hero-machines::after { left: 22%; right: 22%; bottom: .45rem; }
  .cxsr-view--categories { min-height: 100svh; padding: 7.3rem .75rem 2rem; }
  .cxsr-section-heading { width: min(96vw, 56rem); }
  .cxsr-section-heading h1 { font-size: clamp(3rem, 13vw, 5rem); }
  .cxsr-section-heading > p:last-child { max-width: 40rem; font-size: .95rem; }
  .cxsr-category-carousel { height: 26rem; padding: 0 2.65rem 4.8rem; transform: translateY(-.85rem); }
  .cxsr-category-viewport { cursor: grab; touch-action: pan-y; }
  .cxsr-category-viewport.is-dragging { cursor: grabbing; }
  .cxsr-carousel-arrow { width: 2.85rem; height: 2.85rem; }
  .cxsr-category-card { width: min(10rem, 42vw); min-height: 20rem; }
  .cxsr-category-card { min-height: 22rem; }
  .cxsr-view--category { grid-template-columns: 1fr; grid-template-rows: auto auto auto; min-height: 100svh; padding: 7.6rem 1rem 2rem; }
  .cxsr-category-intro h1 { font-size: clamp(3rem, 14vw, 5rem); }
  .cxsr-category-visual { grid-row: 2; width: min(68vw, 22rem); max-height: 28vh; }
  .cxsr-category-visual img { max-height: 28vh; }
  .cxsr-product-picker { grid-column: 1; grid-row: 3; }
  .cxsr-product-picker__body.has-navigation { padding-inline: 2.75rem; }
  .cxsr-product-card-grid { grid-template-columns: repeat(var(--cxsr-product-visible), minmax(0, 1fr)); }
  .cxsr-product-card { max-width: 32rem; }
  .cxsr-view--product { grid-template-columns: 1fr; grid-template-rows: auto auto auto auto; min-height: 100svh; padding: 8.2rem 1rem 2rem; }
  .cxsr-spec-card { grid-row: 2; transform: none; }
  .cxsr-product-machine { grid-row: 1; width: min(82vw, 28rem); min-height: 27vh; }
  .cxsr-product-machine img { max-height: 31vh; }
  .cxsr-product-copy { grid-row: 3; grid-column: 1; }
  .cxsr-product-copy h1 { font-size: clamp(2.35rem, 11vw, 4.1rem); max-width: 10ch; }
  .cxsr-product-rail { grid-row: 4; grid-column: 1; }
  .cxsr-price { flex-wrap: wrap; }
  .cxsr-price strong { font-size: clamp(2.8rem, 14vw, 4.8rem); }
  .cxsr-actions { display: grid; }
  .cxsr-date-grid { grid-template-columns: 1fr; }
  .cxsr-breadcrumbs { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .cxsr-view,
  .cxsr-background img,
  .cxsr-carousel-arrow,
  .cxsr-category-card,
  .cxsr-category-card__visual img,
  .cxsr-product-machine img,
  .cxsr-button,
  .cxsr-hero-machines,
  .cxsr-hero-machines > img:first-child,
  .cxsr-hero-machines .cxsr-reflection { animation: none !important; transition: none !important; }
}


/* v0.10.27: product detail polish */
.cxsr-product-machine {
  width: min(35vw, 40rem);
}
.cxsr-product-machine img.is-entering-left,
.cxsr-product-machine img.is-leaving-right,
.cxsr-product-machine img[data-cxsr-stage-ghost] {
  position: absolute;
  inset: 0;
  margin: auto;
}
.cxsr-view--product {
  grid-template-columns: minmax(15rem, .5fr) minmax(22rem, .88fr) minmax(31rem, 1.12fr);
  gap: clamp(1.2rem, 2vw, 2rem);
  padding-left: clamp(2rem, 5vw, 5rem);
  padding-right: clamp(2rem, 5vw, 5rem);
}
.cxsr-product-copy {
  justify-self: stretch;
  max-width: min(100%, 46rem);
  padding-right: clamp(1rem, 2vw, 1.8rem);
}
.cxsr-product-copy h1 {
  font-size: clamp(2.4rem, 4vw, 4.5rem);
  max-width: 12ch;
}
.cxsr-rental-plan button,
.cxsr-accessory-tabs button,
.cxsr-mode-switch a {
  display: grid;
  place-items: center;
  text-align: center;
}
.cxsr-rental-plan button {
  min-height: 4.25rem;
  align-content: center;
}
.cxsr-rental-plan button span,
.cxsr-rental-plan button small {
  width: 100%;
  text-align: center;
}
.cxsr-mode-switch a {
  min-height: 2.5rem;
}
@media (max-width: 1280px) {
  .cxsr-view--product {
    grid-template-columns: minmax(13rem,.46fr) minmax(18rem,.86fr) minmax(28rem,1.08fr);
    gap: 1rem;
    padding-left: 1.8rem;
    padding-right: 1.8rem;
  }
  .cxsr-product-machine { width: min(34vw, 36rem); }
  .cxsr-product-copy h1 { font-size: clamp(2.25rem, 3.9vw, 4.1rem); }
}
@media (max-width: 1080px) {
  .cxsr-product-copy {
    max-width: min(100%, 44rem);
    padding-right: 0;
  }
}
@media (max-width: 720px) {
  .cxsr-rental-plan button { min-height: 4.55rem; }
  .cxsr-product-copy h1 {
    font-size: clamp(2.15rem, 10vw, 3.7rem);
    max-width: 11ch;
  }
}


/* v0.10.28: stable product swap, wider content column and compact rental card. */
.cxsr-view--product {
  grid-template-columns: minmax(14rem, .44fr) minmax(20rem, .78fr) minmax(35rem, 1.32fr);
  column-gap: clamp(1rem, 1.65vw, 1.7rem);
  padding-top: clamp(10.5rem, 17vh, 12.75rem);
  padding-left: clamp(1.5rem, 3.7vw, 4.25rem);
  padding-right: clamp(1.5rem, 3.7vw, 4.25rem);
}
.cxsr-product-machine {
  width: min(33vw, 38rem);
  overflow: hidden;
}
.cxsr-product-machine img.is-entering-left,
.cxsr-product-machine img.is-leaving-right,
.cxsr-product-machine img[data-cxsr-stage-ghost] {
  position: absolute;
  inset: 0;
  margin: auto;
}
.cxsr-product-copy {
  justify-self: stretch;
  width: 100%;
  max-width: 50rem;
  padding-right: 0;
}
.cxsr-product-copy h1 {
  max-width: 13ch;
  font-size: clamp(2.25rem, 3.65vw, 4.15rem);
  line-height: .94;
}
.cxsr-accessory-tabs {
  grid-template-columns: repeat(3, minmax(5.5rem, 1fr));
}
.cxsr-accessory-tabs button {
  width: 100%;
  min-width: 0;
  padding-inline: .42rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: .7rem;
  line-height: 1.1;
  text-align: center;
}
.cxsr-rental-plan button,
.cxsr-rental-plan button span,
.cxsr-rental-plan button small {
  text-align: center;
}
.cxsr-date-grid { display: none !important; }
@media (max-width: 1360px) {
  .cxsr-view--product {
    grid-template-columns: minmax(13rem, .42fr) minmax(18rem, .72fr) minmax(31rem, 1.28fr);
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .cxsr-product-machine { width: min(31vw, 34rem); }
}
@media (max-width: 1120px) {
  .cxsr-view--product {
    grid-template-columns: minmax(12rem, .48fr) minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    padding-top: 9.5rem;
  }
  .cxsr-product-copy {
    grid-column: 1 / -1;
    max-width: min(100%, 52rem);
    margin-inline: auto;
  }
  .cxsr-product-machine { width: min(49vw, 34rem); }
}
@media (max-width: 720px) {
  .cxsr-view--product { padding-top: 8.4rem; }
  .cxsr-product-machine { width: min(88vw, 29rem); overflow: hidden; }
  .cxsr-product-copy { max-width: 100%; }
  .cxsr-product-copy h1 { max-width: 12ch; font-size: clamp(2.05rem, 9.5vw, 3.5rem); }
  .cxsr-accessory-tabs { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .cxsr-accessory-tabs button { font-size: .64rem; padding-inline: .28rem; }
}


/* v0.10.29: balanced product layout, fixed spec card width and priority stage animation. */
.cxsr-view--product {
  --cxsr-product-side-gap: clamp(1.6rem, 4vw, 4.4rem);
  --cxsr-product-spec-width: clamp(21.75rem, 22vw, 23.25rem);
  --cxsr-product-copy-width: clamp(34rem, 33vw, 42rem);
  grid-template-columns: var(--cxsr-product-spec-width) minmax(18rem, 1fr) minmax(28rem, var(--cxsr-product-copy-width));
  column-gap: clamp(1rem, 1.9vw, 2rem);
  row-gap: clamp(1.2rem, 2vw, 2rem);
  align-items: center;
  padding-left: var(--cxsr-product-side-gap);
  padding-right: var(--cxsr-product-side-gap);
}
.cxsr-spec-card {
  width: 100%;
  max-width: var(--cxsr-product-spec-width);
  min-height: 25.75rem;
  justify-self: start;
}
.cxsr-product-machine {
  justify-self: center;
  align-self: center;
  width: min(35vw, 39rem);
  min-height: 42vh;
  overflow: visible;
  z-index: 20;
}
.cxsr-product-machine.is-transitioning {
  z-index: 90;
}
.cxsr-product-machine img {
  position: absolute;
  inset: 0;
  margin: auto;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 54vh;
  object-fit: contain;
}
.cxsr-product-machine img[data-cxsr-product-image] {
  z-index: 4;
}
.cxsr-product-machine img.is-initial-enter,
.cxsr-product-machine img.is-entering-left,
.cxsr-product-machine img.is-leaving-right,
.cxsr-product-machine img[data-cxsr-stage-ghost] {
  z-index: 14;
}
.cxsr-product-copy {
  justify-self: end;
  align-self: center;
  width: min(100%, var(--cxsr-product-copy-width));
  max-width: none;
  margin-left: auto;
  padding-right: 0;
}
.cxsr-product-copy h1 {
  max-width: none;
  font-size: clamp(2rem, 3.15vw, 3.95rem);
  line-height: .94;
  white-space: nowrap;
  text-wrap: nowrap;
  overflow-wrap: normal;
}
.cxsr-rental-plan {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(11.5rem, 13.1rem));
  width: auto;
  max-width: 100%;
  justify-content: start;
}
.cxsr-rental-plan button {
  min-height: 4rem;
  padding-inline: .95rem;
}
.cxsr-accessory-tabs {
  grid-template-columns: repeat(3, minmax(6.2rem, 1fr));
}
.cxsr-accessory-tabs button {
  min-width: 0;
  padding-inline: .52rem;
  font-size: .72rem;
}
@media (max-width: 1500px) {
  .cxsr-view--product {
    --cxsr-product-copy-width: clamp(31rem, 34vw, 38rem);
    --cxsr-product-spec-width: clamp(21rem, 22vw, 22.5rem);
    grid-template-columns: var(--cxsr-product-spec-width) minmax(16rem, .95fr) minmax(25rem, var(--cxsr-product-copy-width));
  }
  .cxsr-product-copy h1 {
    font-size: clamp(1.9rem, 3vw, 3.55rem);
  }
}
@media (max-width: 1280px) {
  .cxsr-view--product {
    --cxsr-product-copy-width: clamp(28rem, 37vw, 34rem);
    grid-template-columns: var(--cxsr-product-spec-width) minmax(14rem, .92fr) minmax(23rem, var(--cxsr-product-copy-width));
  }
  .cxsr-product-machine {
    width: min(33vw, 33rem);
  }
  .cxsr-product-copy h1 {
    font-size: clamp(1.75rem, 2.7vw, 3.1rem);
  }
}
@media (max-width: 1120px) {
  .cxsr-view--product {
    grid-template-columns: minmax(12rem, .5fr) minmax(0, 1fr);
    grid-template-rows: auto auto auto;
  }
  .cxsr-spec-card {
    max-width: 100%;
    min-height: 0;
  }
  .cxsr-product-machine {
    width: min(47vw, 33rem);
    min-height: 32vh;
  }
  .cxsr-product-copy {
    grid-column: 1 / -1;
    width: min(100%, 52rem);
    justify-self: end;
  }
  .cxsr-product-copy h1 {
    white-space: normal;
    text-wrap: balance;
  }
}
@media (max-width: 720px) {
  .cxsr-view--product {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .cxsr-spec-card {
    width: 100%;
  }
  .cxsr-product-machine {
    width: min(88vw, 29rem);
    min-height: 27vh;
  }
  .cxsr-product-copy {
    width: 100%;
  }
  .cxsr-product-copy h1 {
    font-size: clamp(2.05rem, 9.4vw, 3.4rem);
    white-space: normal;
    text-wrap: balance;
  }
  .cxsr-rental-plan {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
}

/* v0.10.30: compact lower picker and full product catalog drawer. */
.cxsr-product-picker--detail {
  padding: .48rem .7rem .55rem;
  border-radius: 1.05rem;
}
.cxsr-product-picker--detail > header {
  align-items: center;
  margin-bottom: .34rem;
  min-height: 2.2rem;
  padding: 0 .12rem;
}
.cxsr-product-picker__heading {
  min-width: 0;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: .8rem;
  flex: 1 1 auto;
}
.cxsr-product-picker__heading span {
  flex: 0 0 auto;
}
.cxsr-product-picker__heading strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cxsr-product-picker--detail .cxsr-product-card {
  min-height: 4.7rem;
  grid-template-columns: 4.7rem minmax(0, 1fr) 2rem;
  gap: .62rem;
  padding: .38rem .55rem;
  border-radius: .85rem;
}
.cxsr-product-picker--detail .cxsr-product-card__image {
  width: 4.7rem;
  min-height: 4rem;
}
.cxsr-product-picker--detail .cxsr-product-card__image img {
  max-height: 5.15rem;
  transform: translateY(.28rem);
}
.cxsr-product-picker--detail .cxsr-product-card__image.is-portrait img {
  max-height: 5.65rem;
  transform: translateY(.34rem);
}
.cxsr-product-picker--detail .cxsr-product-card__body {
  gap: .08rem;
}
.cxsr-product-picker--detail .cxsr-product-card__body small,
.cxsr-product-picker--detail .cxsr-product-card__body i {
  font-size: .61rem;
}
.cxsr-product-picker--detail .cxsr-product-card__body strong,
.cxsr-product-picker--detail .cxsr-product-card__body em {
  font-size: .84rem;
}
.cxsr-catalog-open {
  flex: 0 0 auto;
  min-height: 2.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  padding: .45rem .72rem;
  border: 1px solid rgba(38,152,255,.38);
  border-radius: .72rem;
  color: #dff1ff;
  background: rgba(38,152,255,.1);
  font-size: .72rem;
  font-weight: 900;
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.cxsr-catalog-open svg {
  width: .95rem;
  height: .95rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.cxsr-catalog-open:hover,
.cxsr-catalog-open:focus-visible {
  transform: translateY(-1px);
  border-color: #2698ff;
  background: rgba(38,152,255,.18);
  outline: none;
}
.cxsr-catalog-panel[hidden] { display: none !important; }
.cxsr-catalog-panel {
  position: absolute;
  z-index: 360;
  inset: 6.7rem clamp(.8rem, 2vw, 2rem) clamp(.8rem, 2vh, 1.4rem);
  overflow: hidden;
  border: 1px solid rgba(63,169,255,.28);
  border-radius: 1.45rem;
  color: #f4f9ff;
  background:
    radial-gradient(circle at 76% 0%, rgba(32,132,220,.18), transparent 34%),
    linear-gradient(145deg, rgba(2,12,23,.985), rgba(4,22,39,.975));
  box-shadow: 0 2rem 6rem rgba(0,0,0,.58);
  opacity: 0;
  transform: translate3d(0, calc(100% + 3rem), 0);
  transition: transform .42s cubic-bezier(.22,.85,.2,1), opacity .28s ease;
  pointer-events: none;
}
.cxsr-catalog-panel.is-open {
  opacity: 1;
  transform: translate3d(0,0,0);
  pointer-events: auto;
}
.cxsr-catalog-panel__shell {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0,1fr);
}
.cxsr-catalog-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.2rem;
  padding: 1rem 1.15rem .8rem;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.cxsr-catalog-panel__header > div {
  min-width: 0;
}
.cxsr-catalog-panel__header span {
  color: #2698ff;
  font-size: .7rem;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.cxsr-catalog-panel__header h2 {
  margin: .22rem 0 0;
  font-size: clamp(1.45rem, 2.2vw, 2.3rem);
  line-height: 1;
}
.cxsr-catalog-panel__header p {
  max-width: 58rem;
  margin: .45rem 0 0;
  color: rgba(224,236,249,.62);
  font-size: .84rem;
}
.cxsr-catalog-close {
  flex: 0 0 auto;
  width: 2.65rem;
  height: 2.65rem;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  color: #fff;
  background: rgba(255,255,255,.04);
  cursor: pointer;
}
.cxsr-catalog-close svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
}
.cxsr-catalog-close:hover,
.cxsr-catalog-close:focus-visible {
  border-color: #2698ff;
  background: rgba(38,152,255,.14);
  outline: none;
}
.cxsr-catalog-panel__toolbar {
  display: grid;
  grid-template-columns: minmax(17rem, .72fr) minmax(0,1.35fr);
  gap: .8rem;
  align-items: center;
  padding: .72rem 1rem;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.cxsr-catalog-search {
  min-height: 2.75rem;
  display: grid;
  grid-template-columns: 1.1rem minmax(0,1fr);
  align-items: center;
  gap: .6rem;
  padding: 0 .85rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: .8rem;
  background: rgba(255,255,255,.035);
}
.cxsr-catalog-search svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: #8dccff;
  stroke-width: 2;
}
.cxsr-catalog-search input {
  min-width: 0;
  border: 0;
  outline: 0;
  color: #fff;
  background: transparent;
  font: inherit;
}
.cxsr-catalog-search input::placeholder { color: rgba(224,236,249,.43); }
.cxsr-catalog-kind-tabs {
  min-width: 0;
  display: flex;
  justify-content: flex-end;
  gap: .42rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.cxsr-catalog-kind-tabs::-webkit-scrollbar { display: none; }
.cxsr-catalog-kind-tabs button {
  flex: 0 0 auto;
  min-height: 2.45rem;
  padding: .45rem .72rem;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: .72rem;
  color: rgba(255,255,255,.68);
  background: rgba(255,255,255,.03);
  font-size: .72rem;
  font-weight: 900;
  cursor: pointer;
}
.cxsr-catalog-kind-tabs button:hover,
.cxsr-catalog-kind-tabs button:focus-visible,
.cxsr-catalog-kind-tabs button.is-active {
  color: #fff;
  border-color: rgba(38,152,255,.58);
  background: rgba(38,152,255,.15);
  outline: none;
}
.cxsr-catalog-panel__body {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(14rem, 17rem) minmax(0,1fr);
}
.cxsr-catalog-filters {
  min-height: 0;
  display: grid;
  align-content: start;
  gap: .8rem;
  padding: .9rem;
  overflow-y: auto;
  border-right: 1px solid rgba(255,255,255,.07);
  background: rgba(0,0,0,.12);
}
.cxsr-catalog-filter-group {
  display: grid;
  gap: .42rem;
  padding: .72rem;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: .8rem;
  background: rgba(255,255,255,.025);
}
.cxsr-catalog-filter-group strong {
  margin-bottom: .2rem;
  color: #dff1ff;
  font-size: .75rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.cxsr-catalog-filter-group label {
  display: flex;
  align-items: flex-start;
  gap: .48rem;
  color: rgba(224,236,249,.72);
  font-size: .72rem;
  line-height: 1.3;
  cursor: pointer;
}
.cxsr-catalog-filter-group input {
  flex: 0 0 auto;
  margin-top: .08rem;
  accent-color: #2698ff;
}
.cxsr-catalog-clear {
  min-height: 2.45rem;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: .75rem;
  color: rgba(255,255,255,.72);
  background: rgba(255,255,255,.035);
  font-weight: 850;
  cursor: pointer;
}
.cxsr-catalog-results {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0,1fr);
  gap: .7rem;
  padding: .9rem;
}
.cxsr-catalog-results__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
}
.cxsr-catalog-results__meta strong { font-size: .82rem; }
.cxsr-catalog-results__meta select {
  min-height: 2.45rem;
  min-width: 13rem;
  padding: 0 .7rem;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: .7rem;
  color: #fff;
  background: #071829;
}
.cxsr-catalog-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(13.5rem, 1fr));
  align-content: start;
  gap: .72rem;
  overflow-y: auto;
  padding: .1rem .25rem 1rem .1rem;
}
.cxsr-catalog-card {
  min-width: 0;
  display: grid;
  grid-template-rows: 9rem auto auto minmax(2.8rem, auto) auto;
  gap: .52rem;
  padding: .72rem;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(155deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  text-align: left;
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.cxsr-catalog-card:hover,
.cxsr-catalog-card:focus-visible {
  transform: translateY(-.25rem);
  border-color: rgba(38,152,255,.55);
  background: rgba(38,152,255,.09);
  box-shadow: 0 1rem 2.4rem rgba(0,0,0,.34);
  outline: none;
}
.cxsr-catalog-card__visual {
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: .8rem;
  background: radial-gradient(circle at 50% 42%, rgba(38,152,255,.12), transparent 65%), rgba(255,255,255,.025);
}
.cxsr-catalog-card__visual img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: .35rem;
}
.cxsr-catalog-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: .28rem;
}
.cxsr-catalog-card__badges span {
  padding: .22rem .38rem;
  border-radius: 999px;
  color: #9dd5ff;
  background: rgba(38,152,255,.11);
  font-size: .58rem;
  font-weight: 850;
}
.cxsr-catalog-card > strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .92rem;
}
.cxsr-catalog-card > p {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: rgba(224,236,249,.56);
  font-size: .68rem;
  line-height: 1.4;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.cxsr-catalog-card__footer {
  display: grid;
  gap: .15rem;
  align-self: end;
}
.cxsr-catalog-card__footer b { color: #fff; font-size: .82rem; }
.cxsr-catalog-card__footer small { color: rgba(224,236,249,.5); font-size: .62rem; }
.cxsr-catalog-empty {
  align-self: start;
  padding: 1rem;
  border: 1px dashed rgba(255,255,255,.12);
  border-radius: .9rem;
  color: rgba(224,236,249,.58);
  text-align: center;
}
@media (max-width: 980px) {
  .cxsr-catalog-panel { inset: 6.2rem .65rem .65rem; }
  .cxsr-catalog-panel__toolbar { grid-template-columns: 1fr; }
  .cxsr-catalog-kind-tabs { justify-content: flex-start; }
  .cxsr-catalog-panel__body { grid-template-columns: 13rem minmax(0,1fr); }
}
@media (max-width: 720px) {
  .cxsr-product-picker--detail > header {
    align-items: stretch;
    gap: .45rem;
  }
  .cxsr-product-picker__heading {
    display: grid;
    gap: .12rem;
  }
  .cxsr-catalog-open { min-width: 2.35rem; padding-inline: .55rem; }
  .cxsr-catalog-open span { display: none; }
  .cxsr-catalog-panel {
    position: fixed;
    inset: 5.4rem .35rem .35rem;
    border-radius: 1.05rem;
  }
  .cxsr-catalog-panel__header { padding: .8rem; }
  .cxsr-catalog-panel__header p { display: none; }
  .cxsr-catalog-panel__toolbar { padding: .6rem; }
  .cxsr-catalog-panel__body {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0,1fr);
  }
  .cxsr-catalog-filters {
    display: flex;
    gap: .55rem;
    overflow-x: auto;
    overflow-y: hidden;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .cxsr-catalog-filter-group {
    flex: 0 0 13rem;
  }
  .cxsr-catalog-clear {
    flex: 0 0 8rem;
  }
  .cxsr-catalog-results { padding: .65rem; }
  .cxsr-catalog-results__meta select { min-width: 10rem; max-width: 55vw; }
  .cxsr-catalog-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .cxsr-catalog-card { grid-template-rows: 7rem auto auto minmax(2.6rem, auto) auto; padding: .55rem; }
}
@media (max-width: 480px) {
  .cxsr-catalog-grid { grid-template-columns: 1fr; }
}

/* v0.10.31: paginated catalog, split machine/product filters and faster drawer. */
.cxsr-catalog-panel {
  contain: layout paint;
  will-change: transform, opacity;
  transform: translate3d(0, 2rem, 0) scale(.992);
  transition: transform .28s cubic-bezier(.2,.78,.2,1), opacity .2s ease;
}
.cxsr-catalog-panel.is-open {
  transform: translate3d(0,0,0) scale(1);
}
.cxsr-catalog-panel__shell {
  transform: translateZ(0);
}
.cxsr-catalog-panel__body {
  grid-template-columns: minmax(16rem, 18.5rem) minmax(0,1fr);
}
.cxsr-catalog-filters {
  gap: .65rem;
  padding: .75rem;
  scrollbar-gutter: stable;
}
.cxsr-catalog-filter-mode {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .35rem;
  padding: .3rem;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: .8rem;
  background: rgba(255,255,255,.025);
}
.cxsr-catalog-filter-mode button {
  min-height: 2.35rem;
  padding: .42rem .5rem;
  border: 1px solid transparent;
  border-radius: .62rem;
  color: rgba(224,236,249,.58);
  background: transparent;
  font-size: .66rem;
  font-weight: 900;
  cursor: pointer;
}
.cxsr-catalog-filter-mode button:hover,
.cxsr-catalog-filter-mode button:focus-visible,
.cxsr-catalog-filter-mode button.is-active {
  color: #fff;
  border-color: rgba(38,152,255,.42);
  background: rgba(38,152,255,.15);
  outline: none;
}
.cxsr-catalog-filter-set {
  display: grid;
  gap: .65rem;
}
.cxsr-catalog-filter-set[hidden] { display: none !important; }
.cxsr-catalog-filter-group {
  gap: .34rem;
  padding: .62rem .68rem;
}
.cxsr-catalog-filter-group label {
  font-size: .68rem;
}
.cxsr-catalog-results {
  grid-template-rows: auto minmax(0,1fr) auto auto;
  gap: .55rem;
  padding: .75rem;
}
.cxsr-catalog-results__meta > div {
  min-width: 0;
  display: grid;
  gap: .12rem;
}
.cxsr-catalog-results__meta small {
  min-height: 1rem;
  overflow: hidden;
  color: #7fc4ff;
  font-size: .67rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cxsr-catalog-grid {
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: .6rem;
  padding: .1rem .35rem .7rem .1rem;
  scrollbar-gutter: stable;
}
.cxsr-catalog-card {
  position: relative;
  min-width: 0;
  display: grid;
  grid-template-rows: minmax(0,1fr) auto auto;
  gap: .5rem;
  padding: .62rem;
  cursor: default;
  overflow: hidden;
}
.cxsr-catalog-card__select {
  min-width: 0;
  display: grid;
  grid-template-rows: 7.25rem auto auto minmax(2.4rem, auto);
  gap: .42rem;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.cxsr-catalog-card__select:focus-visible {
  outline: 2px solid rgba(38,152,255,.8);
  outline-offset: .2rem;
  border-radius: .7rem;
}
.cxsr-catalog-card__select > strong {
  overflow: hidden;
  font-size: .86rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cxsr-catalog-card__select > p {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: rgba(224,236,249,.56);
  font-size: .64rem;
  line-height: 1.35;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.cxsr-catalog-card__visual {
  min-height: 0;
}
.cxsr-catalog-card__footer {
  min-width: 0;
  display: grid;
  gap: .1rem;
}
.cxsr-catalog-card__footer b,
.cxsr-catalog-card__footer small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cxsr-catalog-card__actions {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: .38rem;
}
.cxsr-catalog-card__actions button {
  min-width: 0;
  min-height: 2.25rem;
  padding: .42rem .48rem;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: .62rem;
  color: rgba(255,255,255,.74);
  background: rgba(255,255,255,.035);
  font-size: .62rem;
  font-weight: 900;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}
.cxsr-catalog-card__actions button:hover,
.cxsr-catalog-card__actions button:focus-visible {
  color: #fff;
  border-color: rgba(38,152,255,.55);
  outline: none;
  transform: translateY(-1px);
}
.cxsr-catalog-card__quick {
  border-color: rgba(38,152,255,.48) !important;
  background: rgba(38,152,255,.15) !important;
}
.cxsr-catalog-card__quick:disabled {
  opacity: .68;
  cursor: wait;
  transform: none !important;
}
.cxsr-catalog-card.is-added {
  border-color: rgba(57,203,126,.5);
  box-shadow: 0 0 0 1px rgba(57,203,126,.16), 0 1rem 2.4rem rgba(0,0,0,.3);
}
.cxsr-catalog-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  min-height: 2.5rem;
}
.cxsr-catalog-pagination[hidden] { display: none !important; }
.cxsr-catalog-pagination > span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .3rem;
}
.cxsr-catalog-pagination button {
  min-width: 2.25rem;
  height: 2.25rem;
  display: grid;
  place-items: center;
  padding: 0 .45rem;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: .62rem;
  color: rgba(255,255,255,.68);
  background: rgba(255,255,255,.03);
  font-size: .72rem;
  font-weight: 900;
  cursor: pointer;
}
.cxsr-catalog-pagination button:hover,
.cxsr-catalog-pagination button:focus-visible,
.cxsr-catalog-pagination button.is-active {
  color: #fff;
  border-color: rgba(38,152,255,.58);
  background: rgba(38,152,255,.16);
  outline: none;
}
.cxsr-catalog-pagination button:disabled {
  opacity: .3;
  cursor: default;
}
@media (max-width: 1500px) {
  .cxsr-catalog-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 1180px) {
  .cxsr-catalog-panel__body { grid-template-columns: minmax(14rem, 16rem) minmax(0,1fr); }
  .cxsr-catalog-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 800px) {
  .cxsr-catalog-panel__body {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0,1fr);
  }
  .cxsr-catalog-filters {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: start;
    gap: .55rem;
    overflow-x: auto;
    overflow-y: hidden;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .cxsr-catalog-filter-mode { min-width: 15rem; }
  .cxsr-catalog-filter-set {
    display: flex;
    gap: .55rem;
  }
  .cxsr-catalog-filter-set[hidden] { display: none !important; }
  .cxsr-catalog-filter-group { flex: 0 0 13rem; }
  .cxsr-catalog-clear { min-width: 8rem; }
  .cxsr-catalog-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 480px) {
  .cxsr-catalog-grid { grid-template-columns: 1fr; }
  .cxsr-catalog-card__select { grid-template-rows: 8rem auto auto minmax(2.4rem, auto); }
}
@media (prefers-reduced-motion: reduce) {
  .cxsr-catalog-panel { transition: opacity .15s ease !important; transform: none !important; }
}
.cxsr-catalog-card__select,
.cxsr-catalog-card__actions button,
.cxsr-catalog-filter-mode button,
.cxsr-catalog-pagination button {
  font: inherit;
}


/* v0.10.32: clearer catalog cards, 5x2 desktop grid and breadcrumb-safe header spacing. */
.cxsr-catalog-panel__header {
  padding-top: 1.45rem;
  padding-bottom: 1rem;
}
.cxsr-catalog-panel__header span {
  display: block;
  margin-bottom: .28rem;
}
.cxsr-catalog-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .85rem;
  align-content: start;
}
.cxsr-catalog-card {
  min-height: 22.5rem;
  grid-template-rows: 10rem auto minmax(2.65rem, auto) minmax(2.9rem, auto) auto;
  gap: .58rem;
  padding: .82rem;
  overflow: visible;
  transform-origin: center;
}
.cxsr-catalog-card:hover,
.cxsr-catalog-card:focus-within {
  z-index: 12;
  transform: translateY(-.35rem) scale(1.025);
}
.cxsr-catalog-card__visual {
  min-height: 10rem;
  overflow: hidden;
}
.cxsr-catalog-card__visual img {
  width: auto;
  height: auto;
  max-width: 92%;
  max-height: 9.2rem;
  object-fit: contain;
  padding: 0;
}
.cxsr-catalog-card__select > strong,
.cxsr-catalog-card > strong {
  display: -webkit-box;
  min-height: 2.55rem;
  overflow: hidden;
  white-space: normal;
  text-overflow: clip;
  font-size: .86rem;
  line-height: 1.3;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.cxsr-catalog-card__footer b,
.cxsr-catalog-card__select .cxsr-catalog-card__footer b {
  font-size: .86rem;
  line-height: 1.3;
}
.cxsr-catalog-card__select > p {
  min-height: 2.5rem;
  font-size: .66rem;
  line-height: 1.35;
}
.cxsr-catalog-card__actions {
  grid-template-columns: minmax(5.8rem,.85fr) minmax(7.5rem,1.15fr);
}
@media (max-width: 1540px) {
  .cxsr-catalog-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 1240px) {
  .cxsr-catalog-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 920px) {
  .cxsr-catalog-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 520px) {
  .cxsr-catalog-grid { grid-template-columns: 1fr; }
  .cxsr-catalog-card { min-height: 0; }
}


/* v0.10.33: katalog cards polish – lower header, stable content areas, stronger tags, hover priority */
.cxsr-catalog-panel__header {
  padding-top: 20px;
}

.cxsr-catalog-panel__eyebrow {
  display: block;
  margin: 0 0 10px;
}

@media (min-width: 1200px) {
  .cxsr-catalog-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.cxsr-catalog-results,
.cxsr-catalog-grid {
  overflow: visible;
}

.cxsr-catalog-card {
  position: relative;
  min-height: 362px;
  padding-bottom: 86px;
  overflow: visible;
  isolation: isolate;
  z-index: 1;
}

.cxsr-catalog-card:hover,
.cxsr-catalog-card:focus-within {
  z-index: 60;
}

.cxsr-catalog-card__visual {
  min-height: 156px;
  padding: 18px;
}

.cxsr-catalog-card__image,
.cxsr-catalog-card__visual img {
  max-width: 112px;
  max-height: 112px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.cxsr-catalog-card__badges {
  gap: 6px;
}

.cxsr-catalog-card__badge {
  background: linear-gradient(180deg, rgba(39, 126, 255, 0.96), rgba(16, 82, 188, 0.96));
  color: #f5fbff;
  border: 1px solid rgba(118, 194, 255, 0.7);
  box-shadow: 0 10px 24px rgba(7, 24, 56, 0.24);
}

.cxsr-catalog-card__title {
  min-height: 2.6em;
  line-height: 1.28;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.cxsr-catalog-card__meta strong {
  font-size: 1.06rem;
  line-height: 1.2;
  display: inline-block;
  transition: transform 180ms ease;
}

.cxsr-catalog-card:hover .cxsr-catalog-card__meta strong,
.cxsr-catalog-card:focus-within .cxsr-catalog-card__meta strong {
  transform: scale(1.06);
}

.cxsr-catalog-card__excerpt {
  min-height: 2.5em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.cxsr-catalog-card__actions {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  margin-top: 0;
}

@media (max-width: 899px) {
  .cxsr-catalog-card {
    min-height: 340px;
  }
}

/* v0.10.38: full-screen catalog, hidden navigation with hover reveal, compact stable cards. */
.cxsr-showroom.is-catalog-open .cxsr-breadcrumbs {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.cxsr-showroom.is-catalog-open .cxsr-view--product > :not(.cxsr-catalog-panel) {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.cxsr-showroom.is-catalog-open > .cleanex-global-header {
  position: fixed;
  z-index: 1320;
  top: max(2.05rem, env(safe-area-inset-top));
  transform: translate3d(0, calc(-100% - 2rem), 0);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: transform .3s var(--cxsr-ease), opacity .2s ease, visibility .2s ease;
}

.cxsr-showroom.is-catalog-open.is-catalog-menu-visible > .cleanex-global-header {
  transform: translate3d(0, 0, 0);
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.cxsr-catalog-panel {
  position: fixed;
  z-index: 1200;
  inset: 0;
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 78% -8%, rgba(30, 130, 220, .2), transparent 34rem),
    linear-gradient(145deg, #020b15 0%, #041524 58%, #03101c 100%);
  box-shadow: none;
  transform: translate3d(0, .75rem, 0) scale(.998);
  contain: layout paint style;
}

.cxsr-catalog-panel.is-open {
  transform: translate3d(0, 0, 0) scale(1);
}

.cxsr-catalog-menu-reveal {
  position: fixed;
  z-index: 1420;
  top: 0;
  left: 50%;
  width: 3.25rem;
  height: 1.9rem;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(77, 174, 255, .38);
  border-top: 0;
  border-radius: 0 0 .9rem .9rem;
  color: #a9dcff;
  background: rgba(2, 14, 25, .96);
  box-shadow: 0 .65rem 1.6rem rgba(0, 0, 0, .34);
  transform: translateX(-50%);
  cursor: pointer;
  transition: width .2s ease, height .2s ease, color .2s ease, background .2s ease, border-color .2s ease;
}

.cxsr-catalog-menu-reveal svg {
  width: 1.05rem;
  height: 1.05rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .24s ease;
}

.cxsr-catalog-menu-reveal:hover,
.cxsr-catalog-menu-reveal:focus-visible,
.cxsr-showroom.is-catalog-menu-visible .cxsr-catalog-menu-reveal {
  width: 3.7rem;
  height: 2.1rem;
  color: #fff;
  border-color: rgba(77, 174, 255, .72);
  background: rgba(13, 61, 101, .98);
  outline: none;
}

.cxsr-showroom.is-catalog-menu-visible .cxsr-catalog-menu-reveal svg {
  transform: rotate(180deg);
}

.cxsr-catalog-panel__shell {
  height: 100dvh;
  min-height: 0;
  grid-template-rows: auto auto minmax(0, 1fr);
}

.cxsr-catalog-panel__header {
  min-height: 7.1rem;
  align-items: center;
  padding: max(1.15rem, env(safe-area-inset-top)) clamp(1.15rem, 2.4vw, 2.4rem) .9rem;
  background: linear-gradient(180deg, rgba(4, 19, 34, .98), rgba(4, 19, 34, .82));
}

.cxsr-catalog-panel__header h2 {
  font-size: clamp(1.7rem, 2.25vw, 2.55rem);
  letter-spacing: -.035em;
}

.cxsr-catalog-panel__header p {
  max-width: 68rem;
  font-size: .82rem;
}

.cxsr-catalog-panel__toolbar {
  grid-template-columns: minmax(20rem, .8fr) minmax(0, 1.2fr);
  padding: .72rem clamp(1rem, 2vw, 1.8rem);
  background: rgba(2, 13, 24, .72);
}

.cxsr-catalog-panel__body {
  min-height: 0;
  grid-template-columns: minmax(15rem, 17.5rem) minmax(0, 1fr);
}

.cxsr-catalog-filters {
  padding: .72rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: rgba(0, 0, 0, .16);
  scrollbar-width: thin;
  scrollbar-color: rgba(94, 183, 255, .45) transparent;
}

.cxsr-catalog-results {
  min-height: 0;
  overflow: hidden;
  padding: .72rem clamp(.72rem, 1.25vw, 1.15rem) .62rem;
}

.cxsr-catalog-grid {
  min-height: 0;
  overflow: auto;
  align-content: stretch;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  grid-auto-rows: minmax(17rem, 1fr);
  gap: .7rem;
  padding: .08rem .35rem .55rem .08rem;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(94, 183, 255, .45) transparent;
}

.cxsr-catalog-card {
  min-height: 0;
  height: 100%;
  grid-template-rows: minmax(0, 1fr) auto auto;
  gap: .46rem;
  padding: .68rem;
  padding-bottom: .68rem;
  overflow: hidden;
  border-radius: .9rem;
  cursor: default;
  transform: none;
  isolation: auto;
}

.cxsr-catalog-card:hover,
.cxsr-catalog-card:focus-within {
  z-index: 2;
  transform: translateY(-2px);
  border-color: rgba(38, 152, 255, .62);
  background: linear-gradient(155deg, rgba(38, 152, 255, .105), rgba(255, 255, 255, .025));
  box-shadow: 0 .9rem 2rem rgba(0, 0, 0, .3);
}

.cxsr-catalog-card__select {
  min-height: 0;
  grid-template-rows: minmax(6.6rem, 1fr) auto auto minmax(1.15rem, auto);
  gap: .34rem;
}

.cxsr-catalog-card__visual {
  min-height: 6.6rem;
  padding: .65rem;
  border: 1px solid rgba(255, 255, 255, .035);
}

.cxsr-catalog-card__visual img {
  max-width: 82%;
  max-height: 7rem;
}

.cxsr-catalog-card__badges {
  min-height: 1.18rem;
  align-content: start;
  gap: .22rem;
}

.cxsr-catalog-card__badges span {
  padding: .18rem .34rem;
  font-size: .54rem;
  line-height: 1.15;
}

.cxsr-catalog-card__select > strong {
  min-height: 2.15rem;
  font-size: .8rem;
  line-height: 1.28;
}

.cxsr-catalog-card__select > p {
  min-height: 1.15rem;
  font-size: .61rem;
  line-height: 1.3;
  -webkit-line-clamp: 1;
}

.cxsr-catalog-card__footer {
  gap: .05rem;
}

.cxsr-catalog-card__footer b,
.cxsr-catalog-card__select .cxsr-catalog-card__footer b {
  font-size: .82rem;
}

.cxsr-catalog-card__actions {
  position: static;
  left: auto;
  right: auto;
  bottom: auto;
  grid-template-columns: minmax(4.8rem, .82fr) minmax(6.6rem, 1.18fr);
  gap: .34rem;
}

.cxsr-catalog-card__actions button {
  min-height: 2.15rem;
  padding: .38rem .42rem;
  font-size: .6rem;
}

@media (max-width: 1540px) {
  .cxsr-catalog-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 1240px) {
  .cxsr-catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) and (max-height: 900px) {
  .cxsr-catalog-panel__header {
    min-height: 5.8rem;
    padding-top: max(.78rem, env(safe-area-inset-top));
    padding-bottom: .62rem;
  }
  .cxsr-catalog-panel__header span {
    margin-bottom: .14rem;
  }
  .cxsr-catalog-panel__header h2 {
    font-size: clamp(1.5rem, 2vw, 2.15rem);
  }
  .cxsr-catalog-panel__header p {
    margin-top: .28rem;
    font-size: .72rem;
  }
  .cxsr-catalog-panel__toolbar {
    padding-top: .55rem;
    padding-bottom: .55rem;
  }
  .cxsr-catalog-grid {
    grid-auto-rows: minmax(14.7rem, 1fr);
  }
  .cxsr-catalog-card__select {
    grid-template-rows: minmax(5.4rem, 1fr) auto auto minmax(1rem, auto);
  }
  .cxsr-catalog-card__visual {
    min-height: 5.4rem;
    padding: .45rem;
  }
  .cxsr-catalog-card__visual img {
    max-height: 5.8rem;
  }
}

@media (max-width: 920px) {
  .cxsr-catalog-panel__toolbar {
    grid-template-columns: 1fr;
  }
  .cxsr-catalog-kind-tabs {
    justify-content: flex-start;
  }
  .cxsr-catalog-panel__body {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr);
  }
  .cxsr-catalog-filters {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    overflow-x: auto;
    overflow-y: hidden;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
  }
  .cxsr-catalog-filter-set {
    display: flex;
    gap: .55rem;
  }
  .cxsr-catalog-filter-set[hidden] {
    display: none !important;
  }
  .cxsr-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(16rem, auto);
  }
}

@media (max-width: 620px) {
  .cxsr-catalog-panel__header {
    min-height: 4.7rem;
    padding: max(.75rem, env(safe-area-inset-top)) .75rem .65rem;
  }
  .cxsr-catalog-panel__header span,
  .cxsr-catalog-panel__header p {
    display: none;
  }
  .cxsr-catalog-panel__header h2 {
    max-width: calc(100vw - 5rem);
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.1;
  }
  .cxsr-catalog-close {
    width: 2.4rem;
    height: 2.4rem;
  }
  .cxsr-catalog-panel__toolbar {
    padding: .52rem;
  }
  .cxsr-catalog-search {
    min-height: 2.55rem;
  }
  .cxsr-catalog-kind-tabs button {
    min-height: 2.25rem;
    padding: .38rem .58rem;
  }
  .cxsr-catalog-results {
    padding: .55rem;
  }
  .cxsr-catalog-results__meta {
    align-items: stretch;
  }
  .cxsr-catalog-results__meta select {
    min-width: 9rem;
    max-width: 48vw;
  }
  .cxsr-catalog-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }
  .cxsr-catalog-card {
    height: auto;
  }
  .cxsr-catalog-menu-reveal {
    width: 2.9rem;
    height: 1.7rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cxsr-showroom.is-catalog-open > .cleanex-global-header,
  .cxsr-catalog-menu-reveal,
  .cxsr-catalog-menu-reveal svg,
  .cxsr-catalog-card {
    transition: none !important;
  }
}

/* v0.10.39: complete mobile showroom and single-card category slider. */
.cxsr-carousel-status {
  display: none;
}

@media (max-width: 720px) {
  body.cleanex-showroom-page {
    min-width: 0;
    overflow-x: hidden;
  }

  .cxsr-showroom,
  .cxsr-stage,
  .cxsr-view {
    width: 100%;
    min-width: 0;
  }

  /* Mobile home: one larger right-side machine as a soft background layer. */
  .cxsr-view--home {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    padding: 6.35rem 1rem max(1rem, env(safe-area-inset-bottom));
    overflow: hidden;
  }

  .cxsr-hero-copy {
    z-index: 4;
    width: 100%;
    margin-top: clamp(1.1rem, 5vh, 3.5rem);
    text-align: left;
    transform: none;
  }

  .cxsr-hero-copy h1 {
    max-width: 9ch;
    font-size: clamp(2.75rem, 13.2vw, 4.55rem);
    line-height: .91;
    letter-spacing: -.06em;
  }

  .cxsr-hero-copy > p:not(.cxsr-kicker) {
    max-width: 29rem;
    margin: 1rem 0 0;
    padding-right: 1.2rem;
    font-size: .9rem;
    line-height: 1.5;
  }

  .cxsr-hero-actions {
    width: min(20rem, 100%);
    margin: 1.35rem 0 0;
    gap: .55rem;
  }

  .cxsr-hero-actions .cxsr-button {
    width: 100%;
    min-height: 3.15rem;
  }

  .cxsr-hero-machines--left {
    display: none !important;
  }

  .cxsr-hero-machines--right {
    z-index: 1;
    right: -29vw;
    bottom: clamp(4.4rem, 10vh, 7.5rem);
    width: min(88vw, 31rem);
    opacity: .32;
    transform: none !important;
    filter: saturate(.9);
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.48) 22%, #000 54%, #000 100%);
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.48) 22%, #000 54%, #000 100%);
  }

  .cxsr-hero-machines--right > img:first-child {
    width: 100%;
    transform: none !important;
    filter: drop-shadow(0 1.2rem 1.6rem rgba(0,0,0,.5));
  }

  .cxsr-hero-machines--right .cxsr-reflection,
  .cxsr-hero-machines--right::before,
  .cxsr-hero-machines--right::after {
    display: none;
  }

  .cxsr-industry-strip {
    z-index: 5;
    flex: 0 0 auto;
    width: calc(100% + 1rem);
    grid-template-columns: repeat(4, minmax(12rem, 1fr));
    margin: auto -.5rem 0;
    border-radius: .9rem;
    scroll-snap-type: x mandatory;
  }

  .cxsr-industry-strip article {
    min-height: 4.1rem;
    padding: .62rem .75rem;
    scroll-snap-align: start;
  }

  /* One category per screen, changed by swipe or arrows. */
  .cxsr-view--categories {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 6.45rem .65rem 1rem;
    overflow: hidden;
  }

  .cxsr-section-heading {
    width: 100%;
    margin: .75rem auto .3rem;
    padding: 0 .35rem;
  }

  .cxsr-section-heading h1 {
    font-size: clamp(2.35rem, 11.4vw, 3.65rem);
    line-height: .93;
  }

  .cxsr-section-heading > p:last-child {
    max-width: 31rem;
    margin-top: .7rem;
    font-size: .86rem;
    line-height: 1.45;
  }

  .cxsr-category-carousel {
    width: 100%;
    height: min(25rem, 48svh);
    min-height: 20rem;
    margin-top: .2rem;
    padding: 0 2.7rem 2.3rem;
    transform: none;
  }

  .cxsr-category-carousel::before {
    left: 16%;
    right: 16%;
    bottom: 2.55rem;
    height: 6.5rem;
  }

  .cxsr-category-viewport {
    overflow: hidden;
    perspective: none;
    cursor: grab;
    touch-action: pan-y;
  }

  .cxsr-category-viewport.is-dragging {
    cursor: grabbing;
  }

  .cxsr-category-grid {
    overflow: hidden;
    transform-style: flat;
  }

  .cxsr-category-card {
    left: 50%;
    bottom: 1.75rem;
    width: min(100%, 21.5rem);
    min-height: min(20.5rem, 41svh);
    padding: .4rem .45rem 0;
    grid-template-rows: minmax(0, 1fr) auto auto;
    transform-origin: center center;
  }

  .cxsr-category-card::after {
    bottom: 2rem;
  }

  .cxsr-category-card__visual img {
    width: min(100%, 19rem);
    max-height: min(16rem, 31svh);
  }

  .cxsr-category-card strong {
    min-height: 2.1rem;
    font-size: 1.02rem;
  }

  .cxsr-category-card small {
    min-height: 1.35rem;
    font-size: .69rem;
  }

  .cxsr-carousel-arrow {
    top: 52%;
    width: 2.65rem;
    height: 2.65rem;
  }

  .cxsr-carousel-arrow--prev { left: .05rem; }
  .cxsr-carousel-arrow--next { right: .05rem; }

  .cxsr-carousel-status {
    position: absolute;
    z-index: 430;
    left: 50%;
    bottom: .1rem;
    display: inline-flex;
    align-items: center;
    gap: .32rem;
    min-height: 1.8rem;
    padding: .25rem .65rem;
    border: 1px solid rgba(38,152,255,.25);
    border-radius: 999px;
    color: rgba(225,237,249,.64);
    background: rgba(2,9,18,.72);
    font-size: .72rem;
    font-weight: 850;
    transform: translateX(-50%);
  }

  .cxsr-carousel-status span:first-child {
    color: #fff;
  }

  .cxsr-carousel-status i {
    font-style: normal;
    opacity: .55;
  }

  /* Category details. */
  .cxsr-view--category {
    min-height: 100svh;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: 1rem;
    align-items: start;
    padding: 6.35rem .8rem 1rem;
  }

  .cxsr-category-intro {
    width: 100%;
    max-width: none;
    padding: .55rem .2rem 0;
  }

  .cxsr-back-link {
    margin-bottom: .7rem;
    font-size: .8rem;
  }

  .cxsr-category-intro h1 {
    max-width: 12ch;
    font-size: clamp(2.35rem, 11vw, 3.8rem);
    line-height: .93;
  }

  .cxsr-category-intro > p:last-child {
    margin-top: .75rem;
    font-size: .88rem;
    line-height: 1.5;
  }

  .cxsr-category-visual {
    grid-row: 2;
    width: min(64vw, 18rem);
    max-height: 23svh;
  }

  .cxsr-category-visual img {
    max-height: 23svh;
  }

  .cxsr-product-picker {
    grid-row: 3;
    width: 100%;
    padding: .72rem;
    border-radius: 1rem;
  }

  .cxsr-product-picker > header {
    display: grid;
    gap: .15rem;
    margin-bottom: .6rem;
  }

  .cxsr-product-picker__body.has-navigation {
    padding-inline: 2.55rem;
  }

  .cxsr-product-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cxsr-product-card {
    grid-template-columns: 4.5rem minmax(0, 1fr) 1.9rem;
    gap: .58rem;
    max-width: none;
    padding: .58rem;
  }

  .cxsr-product-card:hover,
  .cxsr-product-card:focus-visible {
    transform: none;
  }

  .cxsr-product-card__image {
    width: 4.5rem;
    min-height: 4.5rem;
  }

  .cxsr-product-card__image img,
  .cxsr-product-card__image.is-portrait img,
  .cxsr-product-card__image.is-wide img {
    max-width: 112%;
    max-height: 5.4rem;
    transform: translateY(.25rem);
  }

  .cxsr-product-card__body strong {
    white-space: normal;
    line-height: 1.25;
  }

  /* Product page order: machine, decision content, specifications, related items. */
  .cxsr-view--product {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: .9rem;
    padding: 6.4rem .8rem 1.1rem;
  }

  .cxsr-product-machine {
    order: 1;
    width: min(82vw, 25rem);
    min-height: 22svh;
    margin: .25rem auto 0;
  }

  .cxsr-product-machine img {
    max-height: 27svh;
  }

  .cxsr-product-copy {
    order: 2;
    width: 100%;
    max-width: none;
    padding: 0;
  }

  .cxsr-product-copy h1 {
    max-width: 12ch;
    font-size: clamp(2.2rem, 10.5vw, 3.65rem);
    line-height: .94;
  }

  .cxsr-product-copy > p[data-cxsr-product-description] {
    margin-top: .75rem;
    font-size: .88rem;
  }

  .cxsr-mode-switch {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: .75rem;
  }

  .cxsr-mode-switch a {
    min-width: 0;
    text-align: center;
  }

  .cxsr-rental-plan,
  .cxsr-date-grid {
    grid-template-columns: 1fr;
  }

  .cxsr-price {
    align-items: flex-end;
  }

  .cxsr-price strong {
    font-size: clamp(2.65rem, 13vw, 4.3rem);
  }

  .cxsr-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cxsr-actions .cxsr-button {
    width: 100%;
  }

  .cxsr-spec-card {
    order: 3;
    width: 100%;
    transform: none !important;
    border-radius: 1rem;
  }

  .cxsr-product-rail {
    order: 4;
    width: 100%;
    margin-top: .15rem;
    scroll-snap-type: x mandatory;
  }

  .cxsr-rail-item {
    min-width: min(82vw, 18rem);
    scroll-snap-align: start;
  }

  .cxsr-accessory-tabs {
    grid-template-columns: 1fr;
  }

  /* Full-screen catalog keeps the compact header visible on touch devices. */
  .cxsr-showroom.is-catalog-open > .cleanex-global-header,
  .cxsr-showroom.is-catalog-open.is-catalog-menu-visible > .cleanex-global-header {
    top: max(.55rem, env(safe-area-inset-top));
    transform: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .cxsr-showroom.is-catalog-open .cxsr-catalog-menu-reveal {
    display: none;
  }

  .cxsr-catalog-panel__header {
    min-height: 8.8rem;
    padding: calc(5.35rem + env(safe-area-inset-top)) .75rem .6rem;
  }

  .cxsr-catalog-panel__header h2 {
    max-width: calc(100vw - 4.5rem);
    font-size: 1.18rem;
  }

  .cxsr-catalog-panel__toolbar {
    position: sticky;
    top: 0;
    z-index: 4;
    padding: .48rem;
    background: rgba(3,16,28,.96);
  }

  .cxsr-catalog-kind-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: .1rem;
    scrollbar-width: none;
  }

  .cxsr-catalog-kind-tabs::-webkit-scrollbar {
    display: none;
  }

  .cxsr-catalog-kind-tabs button {
    flex: 0 0 auto;
  }

  .cxsr-catalog-filters {
    grid-template-columns: max-content max-content max-content;
    gap: .5rem;
    padding: .5rem;
    scroll-snap-type: x proximity;
  }

  .cxsr-catalog-filter-set {
    min-width: max-content;
    padding: .5rem;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: .75rem;
    scroll-snap-align: start;
  }

  .cxsr-catalog-grid {
    gap: .55rem;
  }

  .cxsr-catalog-card {
    border-radius: .85rem;
  }

  .cxsr-catalog-card__actions button {
    min-height: 2.7rem;
    font-size: .72rem;
  }
}

@media (max-width: 420px) {
  .cxsr-hero-copy h1 {
    font-size: clamp(2.45rem, 13vw, 3.35rem);
  }

  .cxsr-hero-machines--right {
    right: -35vw;
    width: 96vw;
    opacity: .27;
  }

  .cxsr-category-carousel {
    height: 22rem;
    min-height: 19rem;
    padding-inline: 2.45rem;
  }

  .cxsr-category-card {
    width: min(100%, 18.5rem);
    min-height: 18.5rem;
  }

  .cxsr-category-card__visual img {
    max-height: 13.8rem;
  }
}

/* v0.10.40: one clear machine card on mobile, matching the category carousel. */
.cxsr-catalog-open--below-actions {
  width: 100%;
  min-height: 3.15rem;
  justify-content: center;
  margin-top: .7rem;
  border: 1px solid rgba(38, 152, 255, .28);
  background: linear-gradient(135deg, rgba(38, 152, 255, .12), rgba(38, 152, 255, .035));
}

@media (max-width: 720px) {
  .cxsr-product-picker {
    padding: .9rem .75rem 1rem;
    border-radius: 1.15rem;
  }

  .cxsr-product-picker > header {
    margin-bottom: .8rem;
    padding-inline: .15rem;
  }

  .cxsr-product-picker__heading span {
    font-size: .68rem;
    letter-spacing: .08em;
  }

  .cxsr-product-picker__heading strong {
    margin-top: .18rem;
    font-size: 1.02rem;
    line-height: 1.2;
  }

  .cxsr-product-picker__body,
  .cxsr-product-picker__body.has-navigation {
    position: relative;
    padding-inline: 0;
    touch-action: pan-y;
  }

  .cxsr-product-card-grid {
    width: calc(100% - 4.35rem);
    margin-inline: auto;
    grid-template-columns: minmax(0, 1fr);
  }

  .cxsr-product-card {
    width: 100%;
    min-height: 17.4rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(9.2rem, 1fr) auto;
    align-items: center;
    justify-items: center;
    gap: .55rem;
    padding: .85rem .8rem 1rem;
    border: 1px solid rgba(39, 155, 255, .5);
    border-radius: 1.2rem;
    background:
      radial-gradient(circle at 50% 32%, rgba(38, 152, 255, .14), transparent 48%),
      linear-gradient(155deg, rgba(10, 35, 59, .96), rgba(5, 19, 34, .96));
    box-shadow: 0 1rem 2.2rem rgba(0, 0, 0, .2);
    text-align: center;
  }

  .cxsr-product-card.is-active {
    border-color: #2698ff;
    box-shadow: 0 0 0 1px rgba(38, 152, 255, .28), 0 1rem 2.4rem rgba(0, 0, 0, .3);
  }

  .cxsr-product-card__image {
    width: 100%;
    min-height: 9.2rem;
    display: grid;
    place-items: center;
    border: 0;
    background: transparent;
    overflow: visible;
  }

  .cxsr-product-card__image img,
  .cxsr-product-card__image.is-portrait img,
  .cxsr-product-card__image.is-wide img {
    width: auto;
    max-width: 92%;
    max-height: 9.5rem;
    object-fit: contain;
    transform: none;
    filter: drop-shadow(0 .8rem 1rem rgba(0, 0, 0, .38));
  }

  .cxsr-product-card__body {
    width: 100%;
    display: grid;
    justify-items: center;
    gap: .18rem;
    min-width: 0;
  }

  .cxsr-product-card__body small {
    color: rgba(184, 211, 235, .62);
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .045em;
  }

  .cxsr-product-card__body strong {
    max-width: 16ch;
    color: #fff;
    font-size: clamp(1.08rem, 5vw, 1.36rem);
    line-height: 1.08;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .cxsr-product-card__body em {
    color: #2698ff;
    font-size: clamp(1.18rem, 5.7vw, 1.55rem);
    font-style: normal;
    font-weight: 900;
    line-height: 1.08;
  }

  .cxsr-product-card__body i {
    color: rgba(199, 220, 239, .66);
    font-size: .7rem;
    font-style: normal;
  }

  .cxsr-product-card > b {
    display: none;
  }

  .cxsr-product-picker__arrow {
    z-index: 3;
    top: 50%;
    width: 2.75rem;
    height: 2.75rem;
    margin-top: 0;
    border-color: rgba(38, 152, 255, .62);
    background: rgba(3, 15, 27, .94);
    transform: translateY(-50%);
  }

  .cxsr-product-picker__arrow--prev { left: .05rem; }
  .cxsr-product-picker__arrow--next { right: .05rem; }

  .cxsr-product-picker--detail {
    order: 0;
    width: 100%;
    margin: 0;
  }

  .cxsr-view--product .cxsr-product-machine { order: 1; }
  .cxsr-view--product .cxsr-product-copy { order: 2; }
  .cxsr-view--product .cxsr-spec-card { order: 3; }
  .cxsr-view--product .cxsr-product-rail { order: 4; }

  .cxsr-catalog-open--below-actions {
    min-height: 3.25rem;
    margin-top: .65rem;
    border-radius: .85rem;
    font-size: .9rem;
  }
}

@media (max-width: 420px) {
  .cxsr-product-card-grid {
    width: calc(100% - 3.85rem);
  }

  .cxsr-product-card {
    min-height: 15.8rem;
    grid-template-rows: minmax(8rem, 1fr) auto;
    padding: .7rem .65rem .85rem;
  }

  .cxsr-product-card__image {
    min-height: 8rem;
  }

  .cxsr-product-card__image img,
  .cxsr-product-card__image.is-portrait img,
  .cxsr-product-card__image.is-wide img {
    max-height: 8.25rem;
  }

  .cxsr-product-picker__arrow {
    width: 2.55rem;
    height: 2.55rem;
  }
}


/* v0.10.41: mobile picker simplification, product stage navigation and catalog grid */
.cxsr-product-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.7rem;
  padding: .72rem 1rem;
  border-radius: .95rem;
  border: 1px solid rgba(38,152,255,.34);
  background: rgba(38,152,255,.10);
  color: #fff;
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
}

.cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-picker__body,
.cxsr-product-picker--detail .cxsr-product-picker__body {
  padding-inline: 3.4rem;
}

.cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card-grid {
  grid-template-columns: minmax(0, 1fr) !important;
}

.cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card {
  max-width: 34rem;
  margin-inline: auto;
  grid-template-columns: minmax(6.2rem, 8.6rem) minmax(0, 1fr);
  align-items: center;
}

.cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card__body {
  gap: .35rem;
}

.cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card__body strong {
  white-space: normal;
}

.cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card__cta {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: .15rem;
}

.cxsr-product-picker--detail[data-cxsr-picker-mode="machines"] {
  display: none;
}

.cxsr-product-machine {
  position: relative;
}

.cxsr-stage-nav {
  position: absolute;
  top: 50%;
  z-index: 3;
  width: 3.2rem;
  height: 3.2rem;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(38,152,255,.42);
  background: rgba(5,16,29,.76);
  color: var(--cxsr-blue);
  transform: translateY(-50%);
  box-shadow: 0 .8rem 2rem rgba(0,0,0,.28);
}

.cxsr-stage-nav svg {
  width: 1.1rem;
  height: 1.1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cxsr-stage-nav:hover,
.cxsr-stage-nav:focus-visible {
  color: #fff;
  border-color: var(--cxsr-blue);
  outline: none;
}

.cxsr-stage-nav:disabled {
  opacity: .3;
  cursor: default;
}

.cxsr-stage-nav--prev { left: clamp(.35rem, 1vw, 1rem); }
.cxsr-stage-nav--next { right: clamp(.35rem, 1vw, 1rem); }

.cxsr-catalog-open--below-actions {
  justify-content: center;
}

.cxsr-catalog-open--below-actions span {
  font-weight: 800;
}

@media (max-width: 900px) {
  .cxsr-catalog-panel__layout {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .cxsr-catalog-filters {
    order: -1;
    position: static;
    max-height: none;
    overflow: visible;
  }

  .cxsr-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .8rem;
  }

  .cxsr-catalog-card {
    padding: .8rem;
  }

  .cxsr-catalog-card__select {
    gap: .55rem;
  }

  .cxsr-catalog-card__visual {
    min-height: 5.6rem;
  }

  .cxsr-catalog-card__actions {
    grid-template-columns: 1fr;
    gap: .45rem;
  }
}

@media (max-width: 720px) {
  .cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-picker__body,
  .cxsr-product-picker--detail .cxsr-product-picker__body {
    padding-inline: 2.65rem;
  }

  .cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card__image {
    margin-inline: auto;
  }

  .cxsr-product-picker[data-cxsr-product-picker] .cxsr-product-card__body {
    justify-items: center;
  }

  .cxsr-stage-nav {
    width: 2.9rem;
    height: 2.9rem;
  }
}


/* v0.10.42: category-to-catalog flow, variants, resources and hidden product tray */
.cxsr-category-catalog-cta {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: clamp(1.1rem, 2vw, 1.7rem);
  border: 1px solid rgba(38,152,255,.28);
  border-radius: 1.35rem;
  background: rgba(4,16,29,.82);
  box-shadow: 0 1.5rem 3rem rgba(0,0,0,.24);
}
.cxsr-category-catalog-cta > div { display: grid; gap: .3rem; }
.cxsr-category-catalog-cta span { color: rgba(224,236,249,.56); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.cxsr-category-catalog-cta strong { font-size: clamp(1.1rem, 2vw, 1.5rem); }
.cxsr-category-catalog-cta p { margin: 0; color: var(--cxsr-muted); }

.cxsr-product-variant {
  margin: .9rem 0 0;
  padding: .9rem;
  border: 1px solid rgba(38,152,255,.25);
  border-radius: 1rem;
  background: rgba(4,16,29,.55);
}
.cxsr-product-variant label { display: grid; gap: .45rem; font-weight: 800; }
.cxsr-product-variant select { min-height: 3rem; border-radius: .85rem; border: 1px solid rgba(255,255,255,.16); background: rgba(2,10,18,.92); color: #fff; padding: 0 .85rem; }
.cxsr-product-variant small { display: block; margin-top: .45rem; color: var(--cxsr-muted); }

.cxsr-product-resources { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .8rem; }
.cxsr-product-resources a { display: inline-flex; align-items: center; min-height: 2.55rem; padding: .6rem .85rem; border: 1px solid rgba(38,152,255,.25); border-radius: .8rem; color: #fff; text-decoration: none; background: rgba(38,152,255,.08); font-weight: 800; }
.cxsr-product-resources a:hover, .cxsr-product-resources a:focus-visible { border-color: var(--cxsr-blue); outline: none; }

.cxsr-service-promise { display: grid; gap: .25rem; margin-top: .9rem; padding: .9rem 1rem; border-radius: 1rem; background: rgba(38,152,255,.1); border: 1px solid rgba(38,152,255,.26); }
.cxsr-service-promise strong { color: #fff; }
.cxsr-service-promise span { color: var(--cxsr-muted); font-size: .85rem; line-height: 1.45; }

.cxsr-product-picker--detail[data-cxsr-picker-mode="machines"] {
  display: block;
  position: fixed;
  z-index: 25;
  left: 50%;
  bottom: 0;
  width: min(74rem, calc(100vw - 2rem));
  max-height: 5.4rem;
  overflow: hidden;
  transform: translate(-50%, calc(100% - 4.6rem));
  transition: transform .28s ease, max-height .28s ease;
  box-shadow: 0 -1.2rem 3rem rgba(0,0,0,.35);
}
.cxsr-product-picker--detail[data-cxsr-picker-mode="machines"]:hover,
.cxsr-product-picker--detail[data-cxsr-picker-mode="machines"]:focus-within,
.cxsr-product-picker--detail[data-cxsr-picker-mode="machines"].is-open {
  max-height: min(28rem, 72vh);
  transform: translate(-50%, 0);
}
.cxsr-detail-tray-toggle { min-height: 2.45rem; padding: .55rem .85rem; border-radius: .75rem; border: 1px solid rgba(38,152,255,.28); background: rgba(38,152,255,.08); color: #fff; font-weight: 800; }

@media (max-width: 720px) {
  .cxsr-category-catalog-cta { flex-direction: column; align-items: stretch; }
  .cxsr-category-catalog-cta .cxsr-button { width: 100%; }
  .cxsr-product-picker--detail[data-cxsr-picker-mode="machines"] { width: calc(100vw - 1rem); }
  .cxsr-product-picker--detail[data-cxsr-picker-mode="machines"]:not(.is-open) { transform: translate(-50%, calc(100% - 4.9rem)); }
}


/* v0.10.44: catalog opens only on demand, product dots and readable catalog */
.cxsr-product-machine {
  pointer-events: auto;
}

.cxsr-product-machine > img,
.cxsr-product-machine .cxsr-product-shadow {
  pointer-events: none;
}

.cxsr-stage-nav,
.cxsr-stage-dots,
.cxsr-stage-dots button {
  pointer-events: auto;
}

.cxsr-stage-nav {
  z-index: 8;
  cursor: pointer;
}

.cxsr-stage-dots {
  position: absolute;
  z-index: 9;
  left: 50%;
  bottom: .55rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .48rem;
  padding: .38rem .55rem;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 999px;
  background: rgba(2,10,18,.58);
  backdrop-filter: blur(10px);
  transform: translateX(-50%);
}

.cxsr-stage-dots[hidden] {
  display: none !important;
}

.cxsr-stage-dots button {
  width: .78rem;
  height: .78rem;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  cursor: pointer;
  transition: width .18s ease, background .18s ease, border-color .18s ease, transform .18s ease;
}

.cxsr-stage-dots button span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.cxsr-stage-dots button:hover,
.cxsr-stage-dots button:focus-visible {
  border-color: #fff;
  transform: scale(1.15);
  outline: none;
}

.cxsr-stage-dots button.is-active {
  width: 1.7rem;
  border-color: var(--cxsr-blue);
  background: var(--cxsr-blue);
}

.cxsr-product-picker--detail[data-cxsr-picker-mode="machines"] {
  display: none !important;
}

.cxsr-catalog-panel__body {
  grid-template-columns: minmax(19rem, 21rem) minmax(0, 1fr);
}

.cxsr-catalog-filters {
  gap: .85rem;
  padding: 1rem;
}

.cxsr-catalog-filter-mode button {
  min-height: 2.8rem;
  padding: .6rem .7rem;
  font-size: .82rem;
}

.cxsr-catalog-filter-group {
  gap: .52rem;
  padding: .85rem .9rem;
  border-radius: .9rem;
}

.cxsr-catalog-filter-group > strong {
  font-size: .78rem;
  letter-spacing: .035em;
}

.cxsr-catalog-filter-group label {
  display: grid;
  grid-template-columns: 1.05rem minmax(0, 1fr);
  align-items: start;
  gap: .55rem;
  font-size: .82rem;
  line-height: 1.35;
}

.cxsr-catalog-filter-group input[type="checkbox"] {
  width: 1.05rem;
  height: 1.05rem;
  margin-top: .06rem;
}

.cxsr-catalog-clear {
  min-height: 2.8rem;
  font-size: .82rem;
}

.cxsr-catalog-results__meta strong {
  font-size: .95rem;
}

.cxsr-catalog-results__meta select {
  min-height: 2.85rem;
  font-size: .82rem;
}

.cxsr-catalog-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: minmax(24rem, auto);
  gap: 1rem;
}

.cxsr-catalog-card {
  gap: .7rem;
  padding: .9rem;
  border-radius: 1.05rem;
}

.cxsr-catalog-card__select {
  grid-template-rows: minmax(11rem, 1fr) auto auto minmax(2.8rem, auto);
  gap: .55rem;
}

.cxsr-catalog-card__visual {
  min-height: 11rem;
  padding: 1rem;
  border-radius: .9rem;
}

.cxsr-catalog-card__visual img {
  max-width: 88%;
  max-height: 10rem;
}

.cxsr-catalog-card__badges span {
  padding: .25rem .45rem;
  font-size: .66rem;
}

.cxsr-catalog-card__select > strong {
  min-height: auto;
  font-size: 1rem;
  line-height: 1.3;
}

.cxsr-catalog-card__select > p {
  min-height: 2.2rem;
  font-size: .76rem;
  line-height: 1.45;
  -webkit-line-clamp: 2;
}

.cxsr-catalog-card__footer b,
.cxsr-catalog-card__select .cxsr-catalog-card__footer b {
  font-size: 1rem;
}

.cxsr-catalog-card__footer small {
  font-size: .72rem;
}

.cxsr-catalog-card__actions {
  grid-template-columns: 1fr 1.15fr;
  gap: .55rem;
}

.cxsr-catalog-card__actions button {
  min-height: 2.75rem;
  padding: .55rem .65rem;
  font-size: .76rem;
}

@media (max-width: 1320px) {
  .cxsr-catalog-panel__body {
    grid-template-columns: minmax(17rem, 19rem) minmax(0, 1fr);
  }

  .cxsr-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 920px) {
  .cxsr-catalog-panel__body {
    grid-template-columns: 1fr;
  }

  .cxsr-catalog-filters {
    padding: .75rem;
  }

  .cxsr-catalog-filter-group {
    min-width: 15rem;
  }

  .cxsr-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
  }
}

@media (max-width: 560px) {
  .cxsr-stage-dots {
    bottom: .25rem;
  }

  .cxsr-catalog-grid {
    grid-template-columns: 1fr;
  }
}


/* v0.10.45: exact viewport height and compact desktop layout for scaled laptop screens. */
@media (min-width: 721px) {
  body.cleanex-showroom-page,
  .cxsr-showroom,
  .cxsr-stage {
    height: var(--cxsr-viewport-height, 100dvh);
    min-height: var(--cxsr-viewport-height, 100dvh);
  }
}

@media (min-width: 721px) and (max-height: 840px) {
  body.cleanex-showroom-page {
    height: var(--cxsr-viewport-height, 100dvh);
    min-height: 0;
    overflow: hidden;
  }

  .cxsr-showroom,
  .cxsr-stage {
    height: var(--cxsr-viewport-height, 100dvh);
    min-height: 0;
    overflow: hidden;
  }

  .cxsr-breadcrumbs {
    top: 4.85rem;
    left: clamp(1.25rem, 4vw, 4rem);
    right: clamp(1.25rem, 4vw, 4rem);
    gap: .5rem;
    font-size: .76rem;
  }

  .cxsr-view--home {
    padding: 5.3rem clamp(1rem, 3vw, 3rem) .6rem;
  }

  .cxsr-hero-copy {
    width: min(52rem, 68vw);
    transform: translateY(-.7rem);
  }

  .cxsr-hero-copy h1 {
    font-size: clamp(2.75rem, 8.3dvh, 5.15rem);
  }

  .cxsr-hero-copy > p:not(.cxsr-kicker) {
    margin-top: .75rem;
    font-size: clamp(.78rem, 1.7dvh, .98rem);
    line-height: 1.4;
  }

  .cxsr-hero-actions {
    margin-top: 1rem;
  }

  .cxsr-showroom {
    --cxsr-hero-bottom: clamp(3.5rem, 7dvh, 4.6rem);
    --cxsr-hero-width: min(34vw, 29rem);
    --cxsr-home-balance-shift: .7rem;
  }

  .cxsr-industry-strip {
    bottom: .45rem;
    min-height: 3.55rem;
  }

  .cxsr-industry-strip article {
    min-height: 3.55rem;
    padding: .45rem .7rem;
  }

  .cxsr-industry-strip__icon {
    width: 1.85rem;
    height: 1.85rem;
  }

  .cxsr-view--categories {
    grid-template-rows: auto minmax(0, 1fr);
    align-items: stretch;
    padding: 5.6rem clamp(.75rem, 2vw, 1.7rem) .2rem;
  }

  .cxsr-section-heading {
    align-self: start;
    width: min(70rem, 92vw);
    margin: 1.15rem auto 0;
  }

  .cxsr-section-heading .cxsr-kicker {
    margin-bottom: .4rem;
    font-size: .67rem;
  }

  .cxsr-section-heading h1 {
    font-size: clamp(2.65rem, 8.5dvh, 4.85rem);
    line-height: .9;
  }

  .cxsr-section-heading > p:last-child {
    max-width: 56rem;
    margin-top: .55rem;
    font-size: clamp(.78rem, 1.75dvh, .96rem);
    line-height: 1.35;
  }

  .cxsr-category-carousel {
    align-self: end;
    width: min(100%, 92rem);
    height: clamp(16rem, 44dvh, 23rem);
    margin: 0 auto;
    padding: 0 clamp(3.2rem, 6vw, 5.25rem) 1.25rem;
    transform: none;
  }

  .cxsr-category-carousel::before {
    bottom: 1.7rem;
    height: clamp(5rem, 11dvh, 7rem);
  }

  .cxsr-category-card {
    bottom: .1rem;
    width: clamp(9.5rem, 13vw, 13.8rem);
    min-height: clamp(11rem, 27dvh, 15.8rem);
    padding: .45rem .45rem 0;
  }

  .cxsr-category-card__visual img {
    width: min(100%, 14rem);
    max-height: clamp(8.8rem, 24dvh, 13.8rem);
  }

  .cxsr-category-card strong {
    min-height: 1.85rem;
    font-size: clamp(.74rem, 1.6dvh, .9rem);
  }

  .cxsr-category-card small {
    min-height: 1.25rem;
    font-size: .61rem;
  }

  .cxsr-carousel-arrow {
    width: 2.9rem;
    height: 2.9rem;
  }

  .cxsr-carousel-status {
    bottom: .1rem;
  }

  .cxsr-view--category {
    grid-template-columns: minmax(18rem, .9fr) minmax(17rem, .7fr);
    grid-template-rows: minmax(0, 1fr) auto;
    gap: clamp(1rem, 2vw, 2rem);
    padding: 5.8rem clamp(1.5rem, 5vw, 5rem) .6rem;
  }

  .cxsr-category-intro h1,
  .cxsr-product-copy h1 {
    font-size: clamp(2.7rem, 7.7dvh, 4.8rem);
  }

  .cxsr-category-intro > p:last-child,
  .cxsr-product-copy > p[data-cxsr-product-description] {
    margin-top: .65rem;
    font-size: clamp(.78rem, 1.7dvh, .98rem);
    line-height: 1.4;
  }

  .cxsr-category-visual {
    width: min(29vw, 27rem);
  }

  .cxsr-category-visual img {
    max-height: 39dvh;
  }

  .cxsr-category-catalog-cta {
    padding: .75rem .9rem;
  }

  .cxsr-view--product {
    grid-template-columns: minmax(12rem, .48fr) minmax(20rem, .95fr) minmax(22rem, .94fr);
    grid-template-rows: minmax(0, 1fr);
    gap: clamp(.8rem, 1.6vw, 1.5rem);
    padding: 5.55rem clamp(1.25rem, 3vw, 3.2rem) .45rem;
  }

  .cxsr-spec-card {
    padding: .9rem 1rem;
    border-radius: 1rem;
  }

  .cxsr-spec-card h2 {
    margin-bottom: .45rem;
    font-size: .65rem;
  }

  .cxsr-spec-card dl div {
    padding: .4rem 0;
  }

  .cxsr-spec-card dt {
    font-size: .68rem;
  }

  .cxsr-spec-card dd {
    font-size: .9rem;
  }

  .cxsr-product-machine {
    width: min(34vw, 34rem);
    min-height: 34dvh;
  }

  .cxsr-product-machine img {
    max-height: 47dvh;
  }

  .cxsr-product-copy {
    max-width: 34rem;
    padding-right: 0;
  }

  .cxsr-product-copy .cxsr-back-link {
    margin-bottom: .55rem;
  }

  .cxsr-mode-switch {
    margin-bottom: .55rem;
  }

  .cxsr-price {
    margin-top: .7rem;
  }

  .cxsr-price strong {
    font-size: clamp(2.55rem, 7.7dvh, 4.7rem);
  }

  .cxsr-price-meta,
  .cxsr-order-form {
    margin-top: .5rem;
  }

  .cxsr-button {
    min-height: 2.75rem;
    padding-inline: .9rem;
    font-size: .82rem;
  }

  .cxsr-service-promise {
    margin-top: .55rem;
    padding: .65rem .8rem;
  }
}

@media (min-width: 721px) and (max-height: 700px) {
  .cxsr-breadcrumbs {
    display: none;
  }

  .cxsr-view--categories {
    padding-top: 4.75rem;
  }

  .cxsr-section-heading {
    margin-top: .45rem;
  }

  .cxsr-section-heading h1 {
    font-size: clamp(2.35rem, 8.2dvh, 3.55rem);
  }

  .cxsr-section-heading > p:last-child {
    margin-top: .35rem;
    font-size: .75rem;
  }

  .cxsr-category-carousel {
    height: clamp(14rem, 43dvh, 18rem);
    padding-bottom: .75rem;
  }

  .cxsr-category-card {
    width: clamp(8.5rem, 12vw, 11.5rem);
    min-height: clamp(9rem, 25dvh, 12.5rem);
  }

  .cxsr-category-card__visual img {
    max-height: clamp(7.4rem, 21dvh, 10.8rem);
  }

  .cxsr-view--category,
  .cxsr-view--product {
    padding-top: 4.8rem;
  }

  .cxsr-category-intro h1,
  .cxsr-product-copy h1 {
    font-size: clamp(2.35rem, 7.5dvh, 3.6rem);
  }

  .cxsr-product-machine img {
    max-height: 42dvh;
  }

  .cxsr-spec-card dl div:nth-child(n+5) {
    display: none;
  }
}


/* v0.10.46: fullscreen showroom with a pull-down header outside the landing screen. */
.cxsr-showroom-menu-reveal {
  display: none;
}

.cxsr-category-intro h1,
.cxsr-product-copy h1 {
  max-width: min(100%, 16ch) !important;
  white-space: normal !important;
  text-wrap: balance;
  overflow-wrap: anywhere;
  word-break: normal;
}

.cxsr-product-copy h1 {
  font-size: clamp(2.35rem, 4.25vw, 5rem) !important;
  line-height: .9;
}

@media (min-width: 1081px) {
  .cxsr-showroom > .cleanex-global-header {
    transition: opacity .24s ease, transform .34s var(--cxsr-ease), visibility .24s ease;
  }

  .cxsr-showroom:not([data-view="home"]) > .cleanex-global-header {
    opacity: 0;
    visibility: hidden;
    transform: translateY(calc(-100% - 1.5rem));
    pointer-events: none;
  }

  .cxsr-showroom:not([data-view="home"]).is-showroom-menu-visible > .cleanex-global-header,
  .cxsr-showroom.is-catalog-open.is-catalog-menu-visible > .cleanex-global-header {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }

  .cxsr-showroom-menu-reveal {
    position: absolute;
    z-index: 1305;
    top: -.05rem;
    left: 50%;
    width: 3rem;
    height: 2.15rem;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(83,165,238,.34);
    border-top: 0;
    border-radius: 0 0 .85rem .85rem;
    color: rgba(255,255,255,.8);
    background: rgba(2,9,18,.93);
    box-shadow: 0 .8rem 2rem rgba(0,0,0,.28);
    transform: translateX(-50%);
    cursor: pointer;
    transition: color .18s ease, background .18s ease, border-color .18s ease;
  }

  .cxsr-showroom-menu-reveal svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.15;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .22s ease;
  }

  .cxsr-showroom-menu-reveal:hover,
  .cxsr-showroom-menu-reveal:focus-visible,
  .cxsr-showroom.is-showroom-menu-visible .cxsr-showroom-menu-reveal {
    color: #fff;
    border-color: rgba(38,152,255,.75);
    background: rgba(7,25,44,.98);
    outline: none;
  }

  .cxsr-showroom.is-showroom-menu-visible .cxsr-showroom-menu-reveal svg {
    transform: rotate(180deg);
  }

  .cxsr-showroom[data-view="home"] .cxsr-showroom-menu-reveal,
  .cxsr-showroom.is-catalog-open .cxsr-showroom-menu-reveal {
    display: none;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-breadcrumbs {
    top: .9rem;
    left: clamp(1.25rem, 3vw, 3rem);
    right: clamp(1.25rem, 3vw, 3rem);
    font-size: .76rem;
  }

  .cxsr-showroom[data-view="product"] .cxsr-breadcrumbs {
    display: none;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-view--categories {
    padding-top: 2.7rem;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-view--category {
    padding-top: 3.1rem;
    padding-bottom: .55rem;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-view--product {
    min-height: var(--cxsr-viewport-height, 100dvh);
    padding-top: 2.25rem;
    padding-bottom: .45rem;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-product-machine {
    min-height: 48vh;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-product-machine img {
    max-height: 62vh;
  }
}

@media (min-width: 1081px) and (max-height: 840px) {
  .cxsr-showroom:not([data-view="home"]) .cxsr-view--categories {
    padding-top: 2.25rem;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-view--category,
  .cxsr-showroom:not([data-view="home"]) .cxsr-view--product {
    padding-top: 2.35rem;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-product-copy h1 {
    font-size: clamp(2.15rem, 6.7dvh, 4rem) !important;
  }

  .cxsr-showroom:not([data-view="home"]) .cxsr-product-machine img {
    max-height: 58dvh;
  }
}


/* v0.10.47: dots below product image, 3-card catalog and prominent filters */
.cxsr-product-machine {
  padding-bottom: 2.35rem;
}

.cxsr-stage-dots {
  bottom: .15rem;
  padding: .2rem .3rem;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

.cxsr-stage-dots button {
  width: .72rem;
  height: .72rem;
  border-width: 2px;
  border-color: rgba(255,255,255,.48);
  background: rgba(4,14,25,.78);
}

.cxsr-stage-dots button.is-active {
  width: 1.65rem;
  background: var(--cxsr-blue);
  box-shadow: 0 0 0 .2rem rgba(38,152,255,.14);
}

.cxsr-catalog-panel__body {
  grid-template-columns: minmax(22rem, 24rem) minmax(0, 1fr);
  gap: 1.2rem;
}

.cxsr-catalog-filters {
  gap: 1rem;
  padding: 1.15rem;
  border-right: 1px solid rgba(38,152,255,.22);
  background: rgba(4,15,27,.96);
}

.cxsr-catalog-filter-mode {
  gap: .65rem;
}

.cxsr-catalog-filter-mode button {
  min-height: 3.25rem;
  padding: .75rem .9rem;
  font-size: .96rem;
  font-weight: 900;
}

.cxsr-catalog-filter-group {
  gap: .72rem;
  padding: 1.05rem 1.1rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 1rem;
  background: rgba(255,255,255,.035);
}

.cxsr-catalog-filter-group > strong {
  padding-bottom: .65rem;
  border-bottom: 1px solid rgba(38,152,255,.2);
  color: #fff;
  font-size: .98rem;
  line-height: 1.25;
  letter-spacing: .055em;
}

.cxsr-catalog-filter-group label {
  grid-template-columns: 1.32rem minmax(0, 1fr);
  gap: .72rem;
  color: rgba(239,247,255,.9);
  font-size: .96rem;
  line-height: 1.38;
  cursor: pointer;
}

.cxsr-catalog-filter-group label:hover {
  color: #fff;
}

.cxsr-catalog-filter-group input[type="checkbox"] {
  width: 1.28rem;
  height: 1.28rem;
  margin-top: .02rem;
  accent-color: var(--cxsr-blue);
}

.cxsr-catalog-clear {
  min-height: 3.15rem;
  font-size: .95rem;
  font-weight: 900;
}

.cxsr-catalog-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: minmax(27rem, auto);
  gap: 1.15rem;
}

.cxsr-catalog-card {
  padding: 1.05rem;
}

.cxsr-catalog-card__select {
  grid-template-rows: minmax(13rem, 1fr) auto auto minmax(3.1rem, auto);
  gap: .7rem;
}

.cxsr-catalog-card__visual {
  min-height: 13rem;
}

.cxsr-catalog-card__visual img {
  max-height: 12rem;
}

.cxsr-catalog-card__select > strong {
  font-size: 1.13rem;
}

.cxsr-catalog-card__select > p {
  font-size: .86rem;
}

.cxsr-catalog-card__footer b {
  font-size: 1.08rem;
}

.cxsr-catalog-card__footer small,
.cxsr-catalog-card__actions button {
  font-size: .84rem;
}

@media (max-width: 1450px) {
  .cxsr-catalog-panel__body {
    grid-template-columns: minmax(20rem, 22rem) minmax(0, 1fr);
  }
  .cxsr-catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1120px) {
  .cxsr-catalog-panel__body {
    grid-template-columns: 1fr;
  }
  .cxsr-catalog-filters {
    border-right: 0;
    border-bottom: 1px solid rgba(38,152,255,.22);
  }
  .cxsr-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .cxsr-product-machine {
    padding-bottom: 1.85rem;
  }
  .cxsr-catalog-filter-group > strong {
    font-size: .9rem;
  }
  .cxsr-catalog-filter-group label {
    font-size: .9rem;
  }
  .cxsr-catalog-grid {
    grid-template-columns: 1fr;
  }
}


/* v0.10.49: product media comes only from the backend product record */
.cxsr-product-image-placeholder {
  position: relative;
  z-index: 2;
  min-width: 9rem;
  min-height: 6rem;
  display: grid;
  place-items: center;
  padding: 1rem;
  border: 1px dashed rgba(255,255,255,.2);
  border-radius: 1rem;
  color: rgba(224,236,249,.52);
  background: rgba(4,15,27,.42);
  font-size: .78rem;
  font-weight: 800;
  text-align: center;
}
.cxsr-product-card__image.is-empty,
.cxsr-catalog-card__visual.is-empty {
  display: grid;
  place-items: center;
}
.cxsr-product-card__image.is-empty .cxsr-product-image-placeholder,
.cxsr-catalog-card__visual.is-empty .cxsr-product-image-placeholder {
  min-width: 0;
  width: 100%;
  height: 100%;
  min-height: 5.5rem;
  border: 0;
  background: transparent;
}


/* v0.10.51: catalog cards must rise above neighbours without being clipped. */
.cxsr-catalog-results {
  overflow: visible;
}

.cxsr-catalog-grid {
  position: relative;
  isolation: isolate;
  padding: 1rem 1.1rem 1.55rem;
  scroll-padding: 1rem;
}

.cxsr-catalog-card {
  position: relative;
  z-index: 1;
  overflow: visible;
  transform-origin: center center;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.cxsr-catalog-card:hover,
.cxsr-catalog-card:focus-within {
  z-index: 40;
  transform: translateY(-.28rem) scale(1.012);
  box-shadow: 0 1.35rem 3rem rgba(0,0,0,.46), 0 0 0 1px rgba(38,152,255,.28);
}

@media (max-width: 720px) {
  .cxsr-catalog-grid {
    padding: .75rem .65rem 1.2rem;
  }
  .cxsr-catalog-card:hover,
  .cxsr-catalog-card:focus-within {
    transform: translateY(-.15rem);
  }
}


/* v0.10.52: dots live below the product image and seeded media has no halo */
.cxsr-product-machine {
  padding-bottom: 0 !important;
}

.cxsr-product-machine > img {
  image-rendering: auto;
  backface-visibility: hidden;
}

.cxsr-stage-dots {
  position: static;
  z-index: 12;
  left: auto;
  bottom: auto;
  width: max-content;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .22rem .35rem;
  border: 0;
  background: transparent;
  backdrop-filter: none;
  transform: none;
  pointer-events: auto;
}

@media (min-width: 1081px) {
  .cxsr-view--product {
    grid-template-rows: minmax(0, 1fr) auto 200px;
    align-items: stretch;
  }

  .cxsr-view--product > .cxsr-spec-card {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: center;
  }

  .cxsr-view--product > .cxsr-product-machine {
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    min-height: 0 !important;
    height: 100%;
    max-height: calc(var(--cxsr-viewport-height, 100dvh) - 275px);
  }

  .cxsr-view--product > .cxsr-product-machine img {
    max-height: min(54vh, calc(var(--cxsr-viewport-height, 100dvh) - 315px)) !important;
  }

  .cxsr-view--product > .cxsr-stage-dots {
    grid-column: 2;
    grid-row: 2;
    align-self: start;
    justify-self: center;
    margin-top: .75rem;
  }

  .cxsr-view--product > .cxsr-product-copy {
    grid-column: 3;
    grid-row: 1 / 3;
    align-self: center;
  }
}

@media (max-width: 1080px) {
  .cxsr-stage-dots {
    justify-self: center;
    margin: .75rem auto 1.25rem;
  }
}


/* v0.10.53: guided customer journey and showroom advisor */
.is-journey-pulse {
  position: relative;
  z-index: 4;
  overflow: visible !important;
  animation: cxsrJourneyBlueGlow 2.85s cubic-bezier(.42, 0, .32, 1) infinite;
  will-change: box-shadow;
}

@keyframes cxsrJourneyBlueGlow {
  0%, 100% {
    box-shadow:
      0 0 8px 0 rgba(38, 152, 255, 0),
      0 0 24px 0 rgba(38, 152, 255, 0),
      0 0 52px 0 rgba(38, 152, 255, 0);
  }
  46% {
    box-shadow:
      0 0 20px 7px rgba(38, 152, 255, .56),
      0 0 52px 20px rgba(38, 152, 255, .30),
      0 0 92px 34px rgba(38, 152, 255, .13);
  }
  68% {
    box-shadow:
      0 0 28px 10px rgba(38, 152, 255, .31),
      0 0 70px 28px rgba(38, 152, 255, .14),
      0 0 112px 42px rgba(38, 152, 255, .05);
  }
}

.cxsr-ai-bubble {
  position: fixed;
  right: clamp(1rem, 2vw, 2rem);
  bottom: clamp(1rem, 2vw, 2rem);
  z-index: 240;
  width: min(24rem, calc(100vw - 2rem));
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: .85rem;
  align-items: center;
  padding: .85rem 1rem;
  border: 1px solid rgba(38,152,255,.48);
  border-radius: 1.15rem;
  background: rgba(3,14,25,.96);
  color: #fff;
  text-align: left;
  box-shadow: 0 1.4rem 4rem rgba(0,0,0,.46), 0 0 2.2rem rgba(38,152,255,.14);
  opacity: 0;
  transform: translateY(1rem) scale(.96);
  pointer-events: none;
  transition: opacity .24s ease, transform .24s ease, border-color .2s ease;
}

.cxsr-ai-bubble.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.cxsr-ai-bubble:hover,
.cxsr-ai-bubble:focus-visible {
  border-color: var(--cxsr-blue);
  outline: none;
}

.cxsr-ai-bubble__icon {
  width: 3rem;
  height: 3rem;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--cxsr-blue);
  box-shadow: 0 0 0 .35rem rgba(38,152,255,.12);
}

.cxsr-ai-bubble__icon svg,
.cxsr-ai-close svg,
.cxsr-ai-mic svg {
  width: 1.35rem;
  height: 1.35rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cxsr-ai-bubble strong,
.cxsr-ai-bubble small { display: block; }
.cxsr-ai-bubble strong { font-size: .96rem; }
.cxsr-ai-bubble small { margin-top: .18rem; color: rgba(224,236,249,.7); font-size: .78rem; }

.cxsr-ai-panel {
  position: fixed;
  inset: 0;
  z-index: 300;
  display: grid;
  place-items: center;
  padding: clamp(.65rem, 2vw, 1.5rem);
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s ease, visibility .25s ease;
}

.cxsr-ai-panel.is-open { opacity: 1; visibility: visible; }
.cxsr-ai-panel__backdrop { position: absolute; inset: 0; background: rgba(0,5,10,.82); backdrop-filter: blur(12px); }

.cxsr-ai-dialog {
  position: relative;
  width: min(72rem, 100%);
  max-height: min(52rem, calc(100dvh - 2rem));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid rgba(38,152,255,.34);
  border-radius: 1.45rem;
  background: linear-gradient(145deg, rgba(5,19,34,.99), rgba(2,10,19,.99));
  box-shadow: 0 2rem 6rem rgba(0,0,0,.62);
  transform: translateY(1rem) scale(.985);
  transition: transform .25s ease;
}

.cxsr-ai-panel.is-open .cxsr-ai-dialog { transform: translateY(0) scale(1); }
.cxsr-ai-dialog__header { display: flex; justify-content: space-between; gap: 1rem; padding: clamp(1.1rem, 2.5vw, 1.8rem); border-bottom: 1px solid rgba(255,255,255,.09); }
.cxsr-ai-kicker { color: var(--cxsr-blue); font-size: .72rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.cxsr-ai-dialog__header h2 { margin: .35rem 0 .45rem; font-size: clamp(1.8rem, 4vw, 3.2rem); line-height: .95; letter-spacing: -.045em; }
.cxsr-ai-dialog__header p { max-width: 52rem; margin: 0; color: rgba(224,236,249,.72); }
.cxsr-ai-close { flex: 0 0 auto; width: 2.8rem; height: 2.8rem; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.15); border-radius: 999px; background: rgba(255,255,255,.04); color: #fff; }
.cxsr-ai-close:hover,.cxsr-ai-close:focus-visible { border-color: var(--cxsr-blue); outline: none; }

.cxsr-ai-dialog__body { min-height: 0; display: grid; grid-template-rows: minmax(0,1fr) auto; }
.cxsr-ai-conversation { min-height: 0; overflow-y: auto; padding: clamp(1rem, 2.5vw, 1.6rem); scrollbar-color: rgba(38,152,255,.5) transparent; }
.cxsr-ai-message { max-width: 48rem; padding: .9rem 1rem; border-radius: 1rem; }
.cxsr-ai-message strong { display: block; margin-bottom: .28rem; }
.cxsr-ai-message p { margin: 0; color: rgba(224,236,249,.76); }
.cxsr-ai-message--assistant { border: 1px solid rgba(38,152,255,.22); background: rgba(38,152,255,.07); }
.cxsr-ai-message--user { margin: 1rem 0 1rem auto; background: var(--cxsr-blue); color: #fff; }
.cxsr-ai-message--user p { color: #fff; }
.cxsr-ai-starters { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .8rem; }
.cxsr-ai-starters button { min-height: 2.45rem; padding: .55rem .8rem; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; background: rgba(255,255,255,.04); color: #fff; font-weight: 700; }
.cxsr-ai-starters button:hover,.cxsr-ai-starters button:focus-visible { border-color: var(--cxsr-blue); outline: none; }
.cxsr-ai-results { scroll-margin-top: 1rem; }
.cxsr-ai-result-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; margin-top: 1rem; }
.cxsr-ai-result { min-width: 0; overflow: hidden; border: 1px solid rgba(38,152,255,.2); border-radius: 1rem; background: rgba(9,28,47,.7); }
.cxsr-ai-result__visual { height: 11rem; display: grid; place-items: center; padding: .8rem; background: linear-gradient(145deg,rgba(24,51,76,.7),rgba(8,24,40,.75)); color: rgba(224,236,249,.5); }
.cxsr-ai-result__visual img { width: 100%; height: 100%; object-fit: contain; }
.cxsr-ai-result__copy { display: grid; gap: .45rem; padding: .9rem; }
.cxsr-ai-result__copy small { color: var(--cxsr-blue); font-size: .67rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.cxsr-ai-result__copy h3 { margin: 0; font-size: 1.05rem; }
.cxsr-ai-result__copy p { min-height: 3.8rem; margin: 0; color: rgba(224,236,249,.68); font-size: .78rem; }
.cxsr-ai-result__copy > strong { font-size: .95rem; }
.cxsr-ai-result__actions { display: grid; grid-template-columns: 1fr; gap: .45rem; margin-top: .25rem; }
.cxsr-ai-result__actions .cxsr-button { min-height: 2.7rem; padding: .65rem .8rem; font-size: .8rem; }
.cxsr-ai-result__guide { display: grid; place-items: center; min-height: 2.5rem; border: 1px solid rgba(255,255,255,.13); border-radius: .75rem; color: #fff; font-size: .78rem; font-weight: 800; text-decoration: none; }
.cxsr-ai-result__guide.is-muted { color: rgba(224,236,249,.45); }

.cxsr-ai-form { padding: 1rem clamp(1rem,2.5vw,1.6rem); border-top: 1px solid rgba(255,255,255,.09); background: rgba(2,10,19,.96); }
.cxsr-ai-form > label { display: block; margin-bottom: .45rem; font-weight: 800; }
.cxsr-ai-form__field { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .65rem; }
.cxsr-ai-form textarea { width: 100%; min-height: 5rem; resize: vertical; padding: .85rem 1rem; border: 1px solid rgba(255,255,255,.14); border-radius: .9rem; background: rgba(255,255,255,.045); color: #fff; font: inherit; }
.cxsr-ai-form textarea:focus { border-color: var(--cxsr-blue); outline: none; box-shadow: 0 0 0 .2rem rgba(38,152,255,.1); }
.cxsr-ai-mic { min-width: 6rem; display: grid; align-content: center; justify-items: center; gap: .2rem; padding: .55rem .75rem; border: 1px solid rgba(38,152,255,.35); border-radius: .9rem; background: rgba(38,152,255,.08); color: #fff; font-weight: 800; }
.cxsr-ai-mic.is-recording { border-color: #ff6464; color: #ff8b8b; animation: cxsrMicPulse 1s ease-in-out infinite; }
@keyframes cxsrMicPulse { 50% { box-shadow: 0 0 0 .35rem rgba(255,90,90,.12); } }
.cxsr-ai-form__footer { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: .65rem; }
.cxsr-ai-form__footer small { color: rgba(224,236,249,.58); }
.cxsr-ai-form__footer .cxsr-button { flex: 0 0 auto; }
html.cxsr-ai-open { overflow: hidden; }

@media (max-width: 840px) {
  .cxsr-ai-result-list { grid-template-columns: 1fr; }
  .cxsr-ai-result { display: grid; grid-template-columns: 8.5rem minmax(0,1fr); }
  .cxsr-ai-result__visual { height: 100%; min-height: 10rem; }
  .cxsr-ai-result__copy p { min-height: 0; }
}

@media (max-width: 600px) {
  .cxsr-ai-bubble { grid-template-columns: 2.65rem minmax(0,1fr); padding: .7rem .8rem; }
  .cxsr-ai-bubble__icon { width: 2.65rem; height: 2.65rem; }
  .cxsr-ai-panel { padding: 0; }
  .cxsr-ai-dialog { width: 100%; height: 100dvh; max-height: none; border: 0; border-radius: 0; }
  .cxsr-ai-dialog__header h2 { font-size: 2rem; }
  .cxsr-ai-dialog__header p { font-size: .82rem; }
  .cxsr-ai-result { grid-template-columns: 6.5rem minmax(0,1fr); }
  .cxsr-ai-form__field { grid-template-columns: 1fr; }
  .cxsr-ai-mic { grid-auto-flow: column; justify-content: center; min-height: 2.8rem; }
  .cxsr-ai-form__footer { align-items: stretch; flex-direction: column; }
  .cxsr-ai-form__footer .cxsr-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .is-journey-pulse,
  .cxsr-ai-mic.is-recording { animation: none !important; }
}


/* v0.10.55: repaired media rendering and vertically centered catalog cards */
.cxsr-catalog-card {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  min-height: 29rem;
}

.cxsr-catalog-card__select {
  flex: 0 1 auto;
  width: 100%;
  display: grid;
  grid-template-rows: 14rem auto auto auto;
  align-content: center;
  justify-items: stretch;
  gap: .72rem;
  text-align: left;
}

.cxsr-catalog-card__visual {
  width: 100%;
  height: 14rem;
  min-height: 14rem;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.cxsr-catalog-card__visual img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.cxsr-catalog-card__badges,
.cxsr-catalog-card__select > strong,
.cxsr-catalog-card__select > p,
.cxsr-catalog-card__footer,
.cxsr-catalog-card__actions {
  width: 100%;
}

.cxsr-catalog-card__footer {
  margin-top: .7rem;
}

.cxsr-catalog-card__actions {
  margin-top: .65rem;
}

@media (max-width: 720px) {
  .cxsr-catalog-card {
    min-height: 27rem;
  }
  .cxsr-catalog-card__select {
    grid-template-rows: 12rem auto auto auto;
  }
  .cxsr-catalog-card__visual {
    height: 12rem;
    min-height: 12rem;
  }
}


/* v0.10.56: center the complete product composition without lifting it toward the top */
@media (min-width: 1081px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product {
    grid-template-rows: auto auto;
    align-content: center;
    align-items: center;
    min-height: var(--cxsr-viewport-height, 100dvh);
    padding-top: clamp(2.25rem, 4dvh, 3.75rem);
    padding-bottom: clamp(2.25rem, 4dvh, 3.75rem);
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-spec-card {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: center;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    justify-self: center;
    width: min(35vw, 39rem);
    height: min(50dvh, calc(var(--cxsr-viewport-height, 100dvh) - 430px));
    min-height: 18rem !important;
    max-height: 34rem;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine img {
    max-width: 100%;
    max-height: 100% !important;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-stage-dots {
    grid-column: 2;
    grid-row: 2;
    align-self: start;
    justify-self: center;
    margin: .8rem 0 0;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-copy {
    grid-column: 3;
    grid-row: 1 / 3;
    align-self: center;
  }
}

@media (min-width: 1081px) and (max-height: 760px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    height: min(46dvh, calc(var(--cxsr-viewport-height, 100dvh) - 410px));
    min-height: 16.5rem !important;
  }
}

/* v0.10.57: dots stay 20% of viewport above the bottom without reserving space under the machine */
@media (min-width: 1081px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product {
    position: relative;
    grid-template-rows: minmax(0, 1fr);
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-spec-card,
  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine,
  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-copy {
    grid-row: 1;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    width: min(38vw, 43rem);
    height: auto;
    min-height: 42vh !important;
    max-height: none;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine img {
    max-width: 100%;
    max-height: 54vh !important;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-stage-dots {
    position: absolute;
    z-index: 14;
    grid-column: 2;
    grid-row: 1;
    left: 50%;
    bottom: 20vh;
    width: max-content;
    margin: 0;
    transform: translateX(-50%);
  }
}

@media (min-width: 1081px) and (max-height: 760px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    height: auto;
    min-height: 38vh !important;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine img {
    max-height: 50vh !important;
  }
}


/* v0.10.58: dots are anchored directly below the rendered product image */
.cxsr-showroom[data-view="product"] .cxsr-product-machine {
  position: relative;
  overflow: visible;
}

.cxsr-showroom[data-view="product"] .cxsr-product-machine > .cxsr-stage-dots {
  position: absolute !important;
  z-index: 14;
  right: auto !important;
  bottom: auto !important;
  width: max-content;
  max-width: calc(100% - 2rem);
  margin: 0 !important;
  transform: translateX(-50%) !important;
  pointer-events: auto;
}

@media (min-width: 1081px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product {
    grid-template-rows: minmax(0, 1fr);
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    justify-self: center;
    width: min(38vw, 43rem);
    height: auto;
    min-height: 42vh !important;
    max-height: none;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine img {
    max-width: 100%;
    max-height: 54vh !important;
  }
}

@media (max-width: 1080px) {
  .cxsr-showroom[data-view="product"] .cxsr-product-machine > .cxsr-stage-dots {
    max-width: calc(100vw - 2rem);
  }
}


/* v0.10.59: stable model dots below the image container, never below the image itself */
.cxsr-showroom[data-view="product"] .cxsr-product-machine {
  position: relative;
  overflow: visible;
  padding-bottom: 0 !important;
}

.cxsr-showroom[data-view="product"] .cxsr-product-machine > .cxsr-stage-dots {
  position: absolute !important;
  z-index: 14;
  left: 50% !important;
  top: calc(100% + .7rem) !important;
  right: auto !important;
  bottom: auto !important;
  width: max-content;
  max-width: calc(100% - 2rem);
  margin: 0 !important;
  transform: translateX(-50%) !important;
  pointer-events: auto;
}

@media (min-width: 1081px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    width: min(38vw, 43rem);
    height: min(54vh, 34rem) !important;
    min-height: 0 !important;
    max-height: 34rem !important;
    display: grid;
    place-items: center;
  }

  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100% !important;
    object-fit: contain;
  }
}

@media (min-width: 1081px) and (max-height: 760px) {
  .cxsr-showroom[data-view="product"] .cxsr-view--product > .cxsr-product-machine {
    height: min(49vh, 29rem) !important;
  }
}

@media (max-width: 1080px) {
  .cxsr-showroom[data-view="product"] .cxsr-product-machine > .cxsr-stage-dots {
    top: calc(100% + .55rem) !important;
    max-width: calc(100vw - 2rem);
  }
}


/* v0.10.60: normalized catalog media — full product visible inside every card */
.cxsr-catalog-card__select {
  grid-template-rows: auto auto auto auto !important;
}

.cxsr-catalog-card__visual {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: clamp(14rem, 28vh, 17rem) !important;
  min-height: clamp(14rem, 28vh, 17rem) !important;
  padding: clamp(1rem, 1.35vw, 1.45rem) !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  isolation: isolate;
}

.cxsr-catalog-card__visual img {
  position: static !important;
  inset: auto !important;
  display: block !important;
  flex: 0 1 auto;
  width: auto !important;
  height: auto !important;
  max-width: 90% !important;
  max-height: 100% !important;
  margin: auto !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  transform: none !important;
  filter: none;
}

/* Machines need a little breathing room so brushes, wheels and handles stay visible. */
.cxsr-catalog-card[data-cxsr-catalog-card^="machine:"] .cxsr-catalog-card__visual img {
  max-width: 88% !important;
  max-height: 94% !important;
}

/* Smaller accessories may use more of the available canvas. */
.cxsr-catalog-card[data-cxsr-catalog-card^="accessory:"] .cxsr-catalog-card__visual img {
  max-width: 82% !important;
  max-height: 86% !important;
}

@media (max-width: 920px) {
  .cxsr-catalog-card__visual {
    height: clamp(12.5rem, 32vw, 15rem) !important;
    min-height: clamp(12.5rem, 32vw, 15rem) !important;
    padding: 1rem !important;
  }
}

@media (max-width: 620px) {
  .cxsr-catalog-card__visual {
    height: 11.5rem !important;
    min-height: 11.5rem !important;
    padding: .8rem !important;
  }

  .cxsr-catalog-card__visual img,
  .cxsr-catalog-card[data-cxsr-catalog-card^="machine:"] .cxsr-catalog-card__visual img {
    max-width: 92% !important;
    max-height: 92% !important;
  }
}


/* v0.10.62: stable mobile catalog from 320px through tablets */
.cxsr-catalog-mobile-filter-toggle {
  display: none;
}

@media (max-width: 920px) {
  .cxsr-catalog-panel {
    position: fixed;
    inset: calc(5rem + env(safe-area-inset-top)) 0 0;
    width: 100%;
    max-width: none;
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
    border-radius: 0;
    contain: layout paint;
  }

  .cxsr-catalog-panel__shell {
    width: 100%;
    min-width: 0;
    grid-template-rows: auto auto minmax(0, 1fr);
    overflow: hidden;
  }

  .cxsr-catalog-panel__header {
    min-height: 0 !important;
    padding: .72rem .8rem .65rem !important;
    align-items: center;
  }

  .cxsr-catalog-panel__header span,
  .cxsr-catalog-panel__header p {
    display: none !important;
  }

  .cxsr-catalog-panel__header h2 {
    max-width: calc(100vw - 4.5rem);
    margin: 0;
    font-size: clamp(1.14rem, 4.8vw, 1.45rem);
    line-height: 1.12;
  }

  .cxsr-catalog-close {
    width: 2.5rem;
    height: 2.5rem;
  }

  .cxsr-catalog-panel__toolbar {
    position: relative;
    top: auto;
    z-index: 5;
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .55rem;
    padding: .58rem .7rem .65rem;
    background: rgba(3, 16, 28, .98);
  }

  .cxsr-catalog-search {
    width: 100%;
    min-width: 0;
    min-height: 2.85rem;
  }

  .cxsr-catalog-kind-tabs {
    width: 100%;
    justify-content: flex-start;
    gap: .42rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    padding: 0 0 .08rem;
  }

  .cxsr-catalog-kind-tabs button {
    min-height: 2.45rem;
    padding: .48rem .72rem;
    font-size: .72rem;
    scroll-snap-align: start;
  }

  .cxsr-catalog-panel__body {
    width: 100%;
    min-width: 0;
    min-height: 0;
    display: block !important;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .cxsr-catalog-filters {
    width: 100%;
    min-width: 0;
    min-height: 0;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-content: start;
    gap: .65rem;
    padding: .7rem;
    overflow: visible !important;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    background: rgba(2, 12, 22, .92);
  }

  .cxsr-catalog-filter-mode {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
  }

  .cxsr-catalog-filter-mode button {
    width: 100%;
    min-width: 0;
    min-height: 3rem;
    padding: .65rem .55rem;
    font-size: .86rem;
    line-height: 1.15;
    white-space: normal;
  }

  .cxsr-catalog-mobile-filter-toggle:not([hidden]) {
    width: 100%;
    min-height: 3rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .65rem .85rem;
    border: 1px solid rgba(38, 152, 255, .3);
    border-radius: .9rem;
    color: rgba(229, 241, 252, .76);
    background: rgba(38, 152, 255, .07);
    font: inherit;
    cursor: pointer;
  }

  .cxsr-catalog-mobile-filter-toggle span {
    min-width: 0;
    font-size: .78rem;
    font-weight: 800;
    text-align: left;
  }

  .cxsr-catalog-mobile-filter-toggle strong {
    flex: 0 0 auto;
    color: #fff;
    font-size: .82rem;
  }

  .cxsr-catalog-filters:not(.is-mobile-open) .cxsr-catalog-filter-set,
  .cxsr-catalog-filters:not(.is-mobile-open) .cxsr-catalog-clear {
    display: none !important;
  }

  .cxsr-catalog-filter-set,
  .cxsr-catalog-filter-set:not([hidden]) {
    width: 100%;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
    padding: 0 !important;
    overflow: visible;
    border: 0 !important;
    border-radius: 0 !important;
    scroll-snap-align: none !important;
  }

  .cxsr-catalog-filter-set[hidden] {
    display: none !important;
  }

  .cxsr-catalog-filter-group {
    width: 100%;
    min-width: 0 !important;
    padding: .85rem;
  }

  .cxsr-catalog-filter-group > strong {
    font-size: .82rem;
  }

  .cxsr-catalog-filter-group label {
    grid-template-columns: 1.2rem minmax(0, 1fr);
    gap: .62rem;
    font-size: .86rem;
    line-height: 1.35;
  }

  .cxsr-catalog-filter-group input[type="checkbox"] {
    width: 1.18rem;
    height: 1.18rem;
  }

  .cxsr-catalog-clear {
    width: 100%;
    min-height: 3rem;
    font-size: .86rem;
  }

  .cxsr-catalog-results {
    width: 100%;
    min-width: 0;
    min-height: 0;
    display: block;
    padding: .7rem;
    overflow: visible;
  }

  .cxsr-catalog-results__meta {
    position: sticky;
    top: 0;
    z-index: 4;
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(9rem, auto);
    align-items: center;
    gap: .65rem;
    margin: -.1rem 0 .7rem;
    padding: .55rem 0;
    background: rgba(3, 16, 28, .97);
  }

  .cxsr-catalog-results__meta strong {
    font-size: .9rem;
  }

  .cxsr-catalog-results__meta select {
    width: 100%;
    min-width: 0;
    max-width: none;
    min-height: 2.75rem;
    font-size: .8rem;
  }

  .cxsr-catalog-grid {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
    align-items: stretch;
    gap: .7rem;
    overflow: visible;
    padding: 0 0 1rem;
  }

  .cxsr-catalog-card {
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: auto;
    padding: .72rem;
    overflow: visible;
  }

  .cxsr-catalog-card__select {
    grid-template-rows: auto auto auto auto !important;
  }

  .cxsr-catalog-card__visual {
    width: 100%;
    height: clamp(10.5rem, 28vw, 13rem) !important;
    min-height: clamp(10.5rem, 28vw, 13rem) !important;
    padding: .8rem !important;
  }

  .cxsr-catalog-card__select > strong {
    min-height: 2.5em;
    font-size: .98rem;
  }

  .cxsr-catalog-card__select > p {
    min-height: 2.7em;
    font-size: .78rem;
  }

  .cxsr-catalog-card__actions {
    grid-template-columns: 1fr;
  }

  .cxsr-catalog-card__actions button {
    min-height: 2.85rem;
    font-size: .78rem;
  }

  .cxsr-catalog-pagination {
    position: static;
    margin: .8rem auto .15rem;
  }
}

@media (max-width: 560px) {
  .cxsr-catalog-panel {
    top: calc(4.75rem + env(safe-area-inset-top));
  }

  .cxsr-catalog-panel__header {
    padding-inline: .65rem !important;
  }

  .cxsr-catalog-panel__toolbar,
  .cxsr-catalog-filters,
  .cxsr-catalog-results {
    padding-right: .55rem;
    padding-left: .55rem;
  }

  .cxsr-catalog-filter-set,
  .cxsr-catalog-filter-set:not([hidden]) {
    grid-template-columns: minmax(0, 1fr);
  }

  .cxsr-catalog-results__meta {
    grid-template-columns: minmax(0, 1fr);
    gap: .45rem;
  }

  .cxsr-catalog-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cxsr-catalog-card {
    padding: .8rem;
  }

  .cxsr-catalog-card__visual {
    height: clamp(12rem, 52vw, 15rem) !important;
    min-height: clamp(12rem, 52vw, 15rem) !important;
  }

  .cxsr-catalog-card__actions {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  }
}

@media (max-width: 380px) {
  .cxsr-catalog-panel__header h2 {
    font-size: 1.05rem;
  }

  .cxsr-catalog-kind-tabs button {
    padding-inline: .58rem;
    font-size: .68rem;
  }

  .cxsr-catalog-filter-mode button,
  .cxsr-catalog-mobile-filter-toggle strong {
    font-size: .76rem;
  }

  .cxsr-catalog-card__actions {
    grid-template-columns: 1fr;
  }
}
