body {
  width: 100%;
  margin: 0;
  background-color: var(--color-background);
  color: var(--color-text-primary);
  font-family: var(--font-family);
  font-size: var(--text-md);
  line-height: 1.4;
  letter-spacing: -.03rem
}

.flex {
  display: flex
}

.inline-flex {
  display: inline-flex
}

.flex-col {
  flex-direction: column
}

.flex-wrap {
  flex-wrap: wrap
}

.items-center {
  align-items: center
}

.items-start {
  align-items: flex-start
}

.items-end {
  align-items: flex-end
}

.justify-center {
  justify-content: center
}

.justify-between {
  justify-content: space-between
}

.justify-start {
  justify-content: flex-start
}

.justify-end {
  justify-content: flex-end
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center
}

.inline-flex-center {
  display: inline-flex;
  align-items: center;
  justify-content: center
}

.gap-1 {
  gap: var(--space-1)
}

.gap-2 {
  gap: var(--space-2)
}

.gap-3 {
  gap: var(--space-3)
}

.gap-4 {
  gap: var(--space-4)
}

.gap-5 {
  gap: var(--space-5)
}

.gap-6 {
  gap: var(--space-6)
}

.gap-8 {
  gap: var(--space-8)
}

.gap-10 {
  gap: var(--space-10)
}

.font-normal {
  font-weight: 400
}

.font-medium {
  font-weight: 500
}

.font-semibold {
  font-weight: 600
}

.font-bold {
  font-weight: 700
}

.text-xs {
  font-size: var(--text-xs)
}

.text-sm {
  font-size: var(--text-sm)
}

.text-base {
  font-size: var(--text-base)
}

.text-md {
  font-size: var(--text-md)
}

.text-lg {
  font-size: var(--text-lg)
}

.text-xl {
  font-size: var(--text-xl)
}

.text-2xl {
  font-size: var(--text-2xl)
}

.relative {
  position: relative
}

.absolute {
  position: absolute
}

.fixed {
  position: fixed
}

.inset-0 {
  inset: 0
}

.object-cover {
  object-fit: cover
}

.object-contain {
  object-fit: contain
}

.overflow-hidden {
  overflow: hidden
}

.overflow-auto {
  overflow: auto
}

.cursor-pointer {
  cursor: pointer
}

.transition-fast {
  transition: all var(--transition-fast)
}

.transition-base {
  transition: all var(--transition-base)
}

.transition-slow {
  transition: all var(--transition-slow)
}

.rounded-md {
  border-radius: var(--radius-md)
}

.rounded-lg {
  border-radius: var(--radius-lg)
}

.rounded-xl {
  border-radius: var(--radius-xl)
}

.rounded-2xl {
  border-radius: var(--radius-2xl)
}

.rounded-full {
  border-radius: var(--radius-full)
}

.glass {
  background: var(--glass-bg);
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur-sm);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border)
}

.container-builder-toggle {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: .4rem 1rem;
  border-radius: var(--radius-2xl);
  font-size: .7rem;
  background: var(--black-100);
  color: var(--color-gray-200);
  border: 1px solid rgb(255 255 255 / .08);
  box-shadow: 0 10px 30px rgb(0 0 0 / .3);
  cursor: pointer;
  z-index: 1500;
  transition: transform 0.15s ease,box-shadow 0.2s ease,background 0.2s ease
}

.container-builder-toggle:hover,.container-builder-toggle:focus {
  background: #101829;
  box-shadow: 0 12px 34px rgb(0 0 0 / .38);
  transform: translateY(-2px)
}

.container-builder-toggle-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 24px;
  padding: 0 8px;
  border-radius: var(--radius-pill);
  background: var(--color-blue-500);
  color: #fff;
  font-weight: 700;
  font-size: var(--text-sm)
}

.container-builder-toggle.pulse {
  animation: cbPulse .4s ease
}

@keyframes cbPulse {
  0% {
      transform: translateY(0) scale(1)
  }

  40% {
      transform: translateY(-2px) scale(1.04)
  }

  100% {
      transform: translateY(0) scale(1)
  }
}

.container-builder-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9
}

.container-builder-modal.is-open {
  display: flex
}

.container-builder-backdrop {
  position: absolute;
  inset: 0;
  background: rgb(0 0 0 / .6);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px)
}

.container-builder-dialog {
  position: relative;
  z-index: 1;
  width: min(1180px, 94%);
  max-height: 90vh;
  background: var(--glass-bg-dark);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-card);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border: var(--glass-border);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  overflow: hidden;
  color: var(--color-gray-200)
}

.container-builder-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3)
}

.container-builder-title-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--space-1)
}

.container-builder-title {
  font-size: var(--text-lg);
  font-weight: 700;
  color: #f9fafb
}

.container-builder-indicator {
  font-size: var(--text-sm);
  color: var(--color-gray-400)
}

.container-builder-close {
  width: 36px;
  height: 36px;
  border-radius: var(--radius-full);
  background: var(--color-gray-900);
  border: 1px solid var(--color-gray-800);
  color: var(--color-gray-200);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.15s ease,transform 0.15s ease
}

.container-builder-close:hover,.container-builder-close:focus {
  background: var(--color-gray-800);
  transform: rotate(4deg)
}

.container-builder-body {
  display: grid;
  grid-template-columns: 2.2fr 1fr;
  gap: var(--space-3);
  overflow: hidden
}

.container-builder-grid {
  background: rgb(0 0 0 / 20%);
  border: 1px solid #dee2e614;
  border-radius: var(--radius-xl);
  padding: 10px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(70px,1fr));
  gap: var(--space-2-5);
  max-height: 58vh;
  overflow: auto
}

.container-builder-grid::-webkit-scrollbar {
  display: none
}

.container-builder-selected {
  border: 1px solid #dee2e614;
  border-radius: var(--radius-xl);
  background: rgb(0 0 0 / 20%);
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: var(--space-2-5);
  max-height: 58vh;
  overflow: auto
}

.container-builder-selected-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--color-gray-200)
}

.container-builder-selected-count {
  color: var(--color-gray-400);
  font-size: var(--text-sm)
}

.container-builder-selected-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2)
}

.container-builder-selected-item {
  border: 1px solid #dee2e614;
  border-radius: var(--radius-lg);
  padding: 8px;
  background: var(--color-card-background);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3)
}

.cb-item-main {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0
}

.cb-item-name {
  color: var(--color-gray-100);
  font-weight: 600;
  font-size: var(--text-sm);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.cb-item-meta {
  color: var(--color-gray-400);
  font-size: var(--text-xs)
}

.cb-item-qty {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1-5)
}

.cb-qty-btn {
  width: 28px;
  height: 28px;
  border-radius: var(--radius-md);
  border: 1px solid #000;
  background: #000;
  color: var(--color-gray-200);
  cursor: pointer;
  transition: background 0.15s ease,transform 0.12s ease
}

.cb-qty-btn:hover,.cb-qty-btn:focus {
  background: var(--color-gray-800);
  transform: translateY(-1px)
}

.cb-qty-input {
  width: 52px;
  padding: 6px;
  border-radius: var(--radius-md);
  border: 1px solid #000;
  background: #000;
  color: var(--color-gray-200);
  text-align: center
}

.container-builder-empty {
  color: var(--color-gray-400);
  font-size: var(--text-sm)
}

.container-builder-cell {
  border: 1px dashed #1f2937;
  border-radius: var(--radius-lg);
  background: var(--color-card-background);
  padding: 12px;
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.15s ease,box-shadow 0.15s ease,transform 0.12s ease,background 0.15s ease
}

.container-builder-cell:hover,.container-builder-cell:focus {
  border-color: var(--color-gray-700);
  box-shadow: 0 8px 18px rgb(0 0 0 / .25);
  transform: translateY(-1px)
}

.container-builder-cell.container-builder-added {
  animation: containerPulse 0.35s ease
}

@keyframes containerPulse {
  0% {
      transform: scale(.97)
  }

  50% {
      transform: scale(1.02)
  }

  100% {
      transform: scale(1)
  }
}

.container-builder-cell.is-active {
  border-color: var(--color-white);
  background: #000
}

.container-builder-placeholder {
  color: #475569;
  font-size: var(--text-sm);
  text-align: center
}

.container-builder-fan {
  width: 46px;
  height: 46px;
  border-radius: var(--radius-full);
  border: 1px solid #334155;
  background: var(--color-card-background);
  display: inline-flex;
  align-items: center;
  justify-content: center
}

.container-builder-fan svg {
  width: 26px;
  height: 26px;
  animation: containerFan 1s linear infinite;
  color: #fff
}

.container-builder-fan.is-removing svg {
  color: var(--color-red-400)
}

.container-builder-fan.is-removing {
  animation: removeBlink .35s ease
}

@keyframes removeBlink {
  0% {
      transform: scale(1)
  }

  50% {
      transform: scale(1.06)
  }

  100% {
      transform: scale(1)
  }
}

@keyframes containerFan {
  to {
      transform: rotate(360deg)
  }
}

.container-builder-item {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2-5)
}

.container-builder-item.simple {
  justify-content: center
}

.container-builder-item-info {
  display: flex;
  align-items: center;
  gap: var(--space-2-5)
}

.container-builder-thumb {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--color-gray-100);
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center
}

.container-builder-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.container-builder-item-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  text-align: center
}

.container-builder-item-title {
  color: var(--color-gray-200);
  font-weight: 600;
  font-size: var(--text-sm);
  text-decoration: none
}

.container-builder-price {
  color: var(--color-blue-400);
  font-weight: 600;
  font-size: var(--text-xs)
}

.container-builder-remove {
  border: none;
  background: var(--color-gray-800);
  color: var(--color-red-300);
  width: 32px;
  height: 32px;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: background 0.15s ease,transform 0.12s ease
}

.container-builder-remove:hover,.container-builder-remove:focus {
  background: var(--color-red-700);
  color: #fff;
  transform: scale(1.05)
}

.container-builder-sidebar {
  border: 1px solid var(--color-gray-800);
  border-radius: var(--radius-xl);
  padding: 12px;
  background: var(--color-gray-950);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-height: 58vh
}

.container-builder-summary {
  border: 1px solid #dee2e614;
  border-radius: var(--radius-xl);
  padding: 10px;
  background: rgb(0 0 0 / 20%);
  display: flex;
  gap: var(--space-2-5);
  width: 100%
}

.container-builder-summary-header {
  display: flex;
  align-items: center;
  justify-content: space-between
}

.container-builder-summary-title {
  font-weight: 700;
  color: var(--color-gray-200);
  font-size: var(--text-md)
}

.container-builder-summary-meta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1-5)
}

.container-builder-nav {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: var(--radius-md);
  border: 1px solid #dee2e614;
  background: #000;
  color: var(--color-gray-200);
  cursor: pointer;
  padding: .2rem;
  transition: background 0.15s ease,transform 0.12s ease;
  position: absolute;
  bottom: 7.4rem;
  left: 1.4rem;
  font-size: .8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.3rem
}

.container-builder-nav:hover,.container-builder-nav:focus {
  background: var(--color-card-background);
  transform: translateY(-1px)
}

.container-builder-nav-btn {
  width: 32px;
  height: 32px;
  border-radius: var(--radius-md);
  border: 1px solid var(--color-card-background);
  background: var(--color-card-background);
  color: var(--color-gray-200);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.15s ease,transform 0.12s ease
}

.container-builder-nav-btn:hover,.container-builder-nav-btn:focus {
  background: var(--color-gray-800);
  transform: translateY(-1px)
}

.container-builder-summary-list {
  display: flex;
  grid-template-columns: repeat(auto-fit,minmax(150px,1fr));
  gap: var(--space-2)
}

.summary-item {
  border: 1px solid var(--color-card-background);
  border-radius: var(--radius-lg);
  padding: 8px;
  background: var(--color-card-background)
}

.summary-label {
  display: block;
  color: var(--color-gray-400);
  font-size: var(--text-xs);
  margin-bottom: 2px
}

.summary-value {
  font-weight: 700;
  color: var(--color-gray-100)
}

.container-builder-sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between
}

.container-builder-sidebar-title {
  font-weight: 700;
  color: var(--color-gray-950)
}

.container-builder-refresh {
  width: 34px;
  height: 34px;
  border-radius: var(--radius-md);
  background: var(--color-gray-100);
  border: 1px solid var(--color-gray-200);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease,transform 0.12s ease
}

.container-builder-refresh:hover,.container-builder-refresh:focus {
  background: var(--color-gray-200);
  transform: rotate(-6deg)
}

.container-builder-products {
  display: flex;
  flex-direction: column;
  gap: var(--space-2-5);
  overflow: auto;
  padding-right: 4px
}

.container-builder-product {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2-5);
  padding: 10px;
  border: 1px solid var(--color-gray-200);
  border-radius: var(--radius-lg);
  cursor: -webkit-grab;
  cursor: grab;
  transition: border-color 0.15s ease,transform 0.12s ease,box-shadow 0.15s ease;
  background: #fff
}

.container-builder-product:hover,.container-builder-product:focus {
  border-color: var(--color-gray-400);
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgb(0 0 0 / .05)
}

.container-builder-product-left {
  display: flex;
  align-items: center;
  gap: var(--space-2-5)
}

.container-builder-product-text {
  display: flex;
  flex-direction: column;
  gap: var(--space-1)
}

.container-builder-product-title {
  font-weight: 600;
  color: var(--color-gray-900)
}

.container-builder-product-price {
  font-size: var(--text-sm);
  color: var(--color-blue-500);
  font-weight: 600
}

.container-builder-add {
  width: 32px;
  height: 32px;
  border-radius: var(--radius-md);
  border: none;
  background: var(--color-blue-500);
  color: #fff;
  cursor: pointer;
  transition: background 0.15s ease,transform 0.12s ease
}

.container-builder-add:hover,.container-builder-add:focus {
  background: var(--color-blue-600);
  transform: scale(1.05)
}

.container-builder-empty {
  color: var(--color-gray-500);
  font-size: var(--text-base);
  display: flex;
  flex-direction: column;
  gap: var(--space-2)
}

.container-builder-empty-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1-5);
  padding: 6px 10px;
  border: 1px dashed #2563eb;
  border-radius: var(--radius-md);
  color: var(--color-gray-200);
  background: rgb(37 99 235 / .08);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 600
}

.cb-empty-icon svg {
  color: var(--color-blue-500)
}

.container-builder-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2-5)
}

.container-builder-hint {
  color: var(--color-gray-400);
  font-size: var(--text-sm);
  display: none
}

.container-builder-actions {
  display: flex;
  gap: var(--space-2)
}

.container-builder-hotel {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-gray-200);
  font-size: var(--text-base)
}

.container-builder-hotel input {
  accent-color: var(--color-blue-500);
  width: 16px;
  height: 16px
}

.container-builder-btn {
  padding: 10px 14px;
  border-radius: var(--radius-lg);
  border: 1px solid #fff0;
  cursor: pointer;
  font-size: .8rem;
  font-weight: 600;
  transition: background 0.15s ease,transform 0.12s ease,border-color 0.15s ease
}

.container-builder-btn.primary {
  background: var(--color-blue-500);
  color: #fff;
  border-color: var(--color-blue-600)
}

.container-builder-btn.primary:hover,.container-builder-btn.primary:focus {
  background: var(--color-blue-600);
  transform: translateY(-1px)
}

.container-builder-btn.ghost {
  background: var(--color-card-background);
  color: var(--color-gray-200);
  border-color: #dee2e614
}

.container-builder-btn.ghost:hover,.container-builder-btn.ghost:focus {
  background: var(--color-gray-800);
  transform: translateY(-1px)
}

.container-builder-toast {
  position: absolute;
  bottom: 16px;
  right: 16px;
  padding: 10px 14px;
  border-radius: var(--radius-lg);
  background: var(--color-gray-950);
  color: var(--color-gray-200);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease,transform 0.2s ease;
  transform: translateY(10px);
  font-size: var(--text-base);
  box-shadow: 0 10px 24px rgb(0 0 0 / .35)
}

.container-builder-toast.visible {
  opacity: 1;
  transform: translateY(0)
}

.container-builder-locked {
  overflow: hidden
}

.container-builder-qty-wrap {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1-5);
  margin-left: 8px
}

.container-builder-qty-input {
  width: 64px;
  padding: 8px 10px;
  border: 1px solid var(--color-gray-200);
  border-radius: var(--radius-lg);
  background: #fff;
  font-weight: 600
}

.container-builder-add-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: 10px 12px;
  border-radius: var(--radius-lg);
  border: 1px solid #3b3d45;
  background: var(--color-accent-light);
  color: var(--color-gray-950);
  cursor: pointer;
  font-weight: 600;
  transition: background 0.15s ease,transform 0.12s ease,border-color 0.15s ease
}

.container-builder-add-btn:hover,.container-builder-add-btn:focus {
  background: #2467e0;
  border-color: #373636;
  transform: translateY(-1px)
}

.container-builder-add-btn svg {
  width: 18px;
  height: 18px;
  color: #fff
}

@media (max-width: 1024px) {
  .container-builder-body {
      grid-template-columns:1fr
  }

  .container-builder-grid,.container-builder-sidebar {
      max-height: 46vh
  }
}

@media (max-width: 640px) {
  .container-builder-toggle {
      right:14px;
      bottom: 80px;
      padding: 12px;
      gap: var(--space-1-5)
  }

  .container-builder-dialog {
      width: 96%;
      padding: 16px
  }

  .container-builder-grid {
      grid-template-columns: repeat(auto-fill,minmax(140px,1fr))
  }

  .container-builder-footer {
      flex-direction: column;
      align-items: flex-start
  }

  .container-builder-actions {
      width: 100%;
      justify-content: space-between
  }
}

body.modal-open {
  overflow: hidden
}

*,::after,::before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: #fff0
}

article,aside,figure,footer,header,main,nav {
  display: block
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0!important
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

.visually-hidden {
  position: absolute;
  width: .0625rem;
  height: .0625rem;
  margin: -.0625rem;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0)
}

p {
  margin-top: 0;
  margin-bottom: 1rem
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit
}

ol,ul {
  margin-top: 0;
  margin-bottom: 1rem
}

ol ol,ol ul,ul ol,ul ul {
  margin-bottom: 0
}

li,ul {
  margin: 0;
  padding: 0
}

dt {
  font-weight: 700
}

dd {
  margin-bottom: .5rem;
  margin-left: 0
}

b {
  font-weight: bolder
}

a {
  color: inherit;
  text-decoration: none;
  background-color: #fff0
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none
}

code,pre {
  font-family: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-size: 1em
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar
}

figure {
  margin: 0 0 1rem
}

img {
  vertical-align: middle;
  border-style: none
}

svg {
  overflow: hidden;
  vertical-align: middle
}

table {
  border-collapse: collapse
}

caption {
  padding-top: .75rem;
  padding-bottom: .75rem;
  colorff: #6c757d;
  text-align: left;
  caption-side: bottom
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent
}

label {
  display: inline-block;
  margin-bottom: .5rem
}

button {
  border-radius: 0
}

button:focus:not(:focus-visible) {
  outline: 0
}

button,input,select,textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  border: none;
  background: none;
  padding: 0;
  font-family: inherit
}

button,input {
  overflow: visible
}

input::-webkit-outer-spin-button,input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0
}

input[type="number"] {
  -moz-appearance: textfield
}

mark {
  background-color: #2467e0;
  padding: 0 .4rem;
  color: #fff;
  letter-spacing: .1px
}

button,select {
  text-transform: none
}

[role="button"] {
  cursor: pointer
}

select {
  word-wrap: normal
}

[type="button"],[type="reset"],[type="submit"],button {
  -webkit-appearance: button
}

[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled),button:not(:disabled) {
  cursor: pointer
}

[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner {
  padding: 0;
  border-style: none
}

input[type="checkbox"],input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0
}

textarea {
  overflow: auto;
  resize: vertical
}

[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button {
  height: auto
}

[type="search"] {
  outline-offset: -.125rem;
  -webkit-appearance: none
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button
}

output {
  display: inline-block
}

[hidden] {
  display: none!important
}

.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 {
  font-weight: 700;
  line-height: 1.2
}

.h1,h1 {
  font-size: var(--text-6xl)
}

.h2,h2 {
  font-size: var(--text-5xl)
}

.h3,h3 {
  font-size: var(--text-3xl)
}

.h4,h4 {
  font-size: var(--text-2xl)
}

.h5,h5 {
  font-size: var(--text-xl)
}

.h6,h6 {
  font-size: var(--text-md)
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: .0625rem solid rgb(0 0 0 / .1)
}

.wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  display: flex;
  flex-direction: column
}

.page {
  flex: 1 1
}

.page--offset {
  padding-top: var(--header-height)
}

.container {
  width: 100%;
  padding: 0 var(--container-padding);
  margin: 0 auto
}

.container--sm {
  padding: 0 var(--container-padding-sm)
}

.container--xs {
  padding: 0 var(--container-padding-xs)
}

.button {
  --btn-height: 4.25rem;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-10);
  height: var(--btn-height);
  padding: 0 1.25rem;
  border-radius: var(--radius-md);
  font-family: var(--font-family-tertiary);
  font-size: .9375rem;
  font-weight: 700;
  line-height: var(--btn-height);
  cursor: pointer;
  border: none;
  transition: all var(--transition-base)
}

.button--accent.fullwidth {
  width: 100%
}

.button--primary {
  background: var(--color-text-primary);
  color: var(--black-100)
}

.button--sm {
  --btn-height: 3.4375rem
}

.button--secondary {
  background: #fff0;
  border: .0625rem solid var(--color-border);
  background: var(--white-10);
  color: var(--color-text-primary)
}

.title {
  font-family: var(--font-family-tertiary);
  font-size: var(--text-8xl);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.0748rem;
  text-transform: uppercase
}

.label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2-5);
  padding: .625rem 1.25rem;
  border: .0625rem solid var(--color-border);
  background-color: var(--white-10);
  border-radius: 3.625rem;
  font-weight: 600;
  letter-spacing: -.03rem;
  text-transform: uppercase;
  color: var(--color-text-primary)
}

.label--dark {
  background-color: var(--black-100);
  color: var(--color-text-primary)
}

.play-button {
  --button-size: 6.625rem;
  position: relative
}

.play-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: url(/catalog/view/theme/default/image/play.svg) no-repeat center / 2.1875rem 2.5rem;
  pointer-events: none;
  transition: all var(--transition-base)
}

.play-button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--button-size);
  height: var(--button-size);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / .25);
  -webkit-backdrop-filter: blur(.25rem);
  backdrop-filter: blur(.25rem);
  transform: translate(-50%,-50%);
  pointer-events: none;
  transition: all var(--transition-base)
}

.play-button:active::after {
  transform: translate(-50%,-50%) scale(.9)
}

.play-button:active::before {
  transform: scale(.9)
}

.swiper-container {
  --slider-gap: var(--space-6);
  margin-left: calc(var(--slider-gap) / -2);
  margin-right: calc(var(--slider-gap) / -2)
}

.swiper-slide {
  padding-left: calc(var(--slider-gap) / 2);
  padding-right: calc(var(--slider-gap) / 2)
}

.header {
  display: flex;
  align-items: center;
  height: var(--header-height);
  padding: 3.75rem 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  transition: all var(--transition-base)
}

.header.scrolled {
  height: var(--header-height-scrolled);
  padding: 1.25rem 0;
  background-color: var(--color-header-background)
}

.header__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4.3125rem
}

.header__logo-img {
  width: 16.4375rem;
  height: 2rem;
  object-fit: contain
}

.header__nav {
  flex: 1 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  margin-right: 5.625rem
}

.header__catalog {
  display: flex;
  align-items: center;
  gap: var(--space-2-5);
  font-family: var(--font-family-secondary);
  color: var(--color-text-primary);
  font-size: var(--text-base);
  font-weight: 600;
  letter-spacing: -.0175rem;
  line-height: .9;
  transition: all var(--transition-base)
}

.header__menu-icon,.header__catalog-icon {
  flex: 0 0 1.25rem;
  width: 1.25rem;
  height: .75rem;
  object-fit: contain;
  color: var(--color-accent)
}

.header__menu-icon {
  color: inherit
}

.header__menu {
  display: flex;
  gap: var(--space-12);
  list-style: none
}

.header__menu-link {
  display: inline-block;
  padding: .3125rem 0;
  font-family: var(--font-family-secondary);
  color: var(--color-text-primary);
  text-decoration: none;
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -.0175rem;
  transition: color var(--transition-base)
}

.header__actions {
  display: flex;
  gap: var(--space-5)
}

.header__action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2-5);
  padding: .625rem 1.25rem;
  border: .0625rem solid var(--color-text-primary);
  border-radius: .8rem;
  background: #fff0;
  color: var(--color-text-primary);
  cursor: pointer;
  font-size: .8rem;
  transition: all var(--transition-base)
}

.header__compare-btn {
  color: var(--color-text-primary);
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border);
  background: rgb(255 84 0 / 60%)
}

.header__compare-btn:hover {
  background: rgb(0 0 0 / 65%)!important
}

.header__action-btn-indicator {
  width: 1.125rem;
  height: 1.125rem;
  background-color: var(--color-accent-green);
  border-radius: var(--radius-full)
}

.header {
  padding: 0
}

.header.scrolled {
  padding: 0
}

.menu-open .header__catalog-icon,.header__catalog-close-icon {
  display: none
}

.header__catalog-close-icon {
  --icon-size: 1.25rem;
  width: var(--icon-size);
  height: var(--icon-size);
  color: var(--color-accent)
}

.menu-open .header__catalog-close-icon {
  display: block
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
  background: rgb(0 0 0 / .1);
  width: 100%;
  height: 100%;
  -webkit-backdrop-filter: blur(.125rem);
  backdrop-filter: blur(.125rem);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-base),visibility var(--transition-base)
}

.menu-open .overlay {
  opacity: 1;
  visibility: visible
}

.header__wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4.3125rem;
  width: 100%;
  padding: 3.75rem 0;
  transition: padding var(--transition-base)
}

.header__actions {
  position: relative
}

.contacts-popup {
  position: absolute;
  top: calc(100% + 1.9375rem);
  right: 0;
  z-index: 6;
  min-width: 20rem;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-base),visibility var(--transition-base),transform var(--transition-base)
}

.contacts-popup.active {
  opacity: 1;
  visibility: visible
}

.contacts-popup__wrapper {
  padding: 1.625rem;
  border: .0625rem solid #434343;
  border-radius: var(--radius-3xl);
  background: #080c0f
}

.contacts-popup__links {
  display: grid;
  justify-items: center;
  gap: var(--space-2-5)
}

.contacts-popup__link {
  color: var(--color-text-primary);
  transition: color var(--transition-base)
}

.contacts-popup__link-text {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-base);
  line-height: 150%;
  letter-spacing: -.02em;
  text-align: center
}

.contacts-popup__link-icon {
  --icon-size: 0.875rem;
  width: var(--icon-size);
  height: var(--icon-size);
  object-fit: contain
}

.contacts-popup__map-actions {
  --gap: 1.1875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--gap);
  margin: 1rem 0
}

.contacts-popup__map-action {
  position: relative;
  font-family: var(--font-family-quinary);
  font-weight: 400;
  font-size: .825rem;
  line-height: 150%;
  letter-spacing: .02em;
  text-align: center;
  color: var(--color-accent);
  transition: color var(--transition-base)
}

.contacts-popup__map-action:not(:first-child)::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(var(--gap) / -2 - 0.0625rem);
  content: '';
  display: block;
  width: .0625rem;
  height: .9375rem;
  background-color: var(--white-100)
}

.contacts-popup__map {
  position: relative;
  width: 100%;
  height: 7.75rem;
  margin: .5rem 0 0;
  border-radius: var(--radius-3xl);
  background: var(--color-card-background);
  overflow: hidden
}

.contacts-popup__map iframe {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 100%;
  height: 25rem;
  z-index: 2
}

.contacts-popup__map-loader {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center
}

.contacts-popup__map-loader-inner {
  --loader-size: 1.5rem;
  width: var(--loader-size);
  height: var(--loader-size);
  border: .1875rem solid var(--color-accent);
  border-bottom-color: #fff0;
  border-radius: var(--radius-full);
  animation: rotation 1s linear infinite
}

@keyframes rotation {
  0% {
      transform: rotate(0deg)
  }

  100% {
      transform: rotate(360deg)
  }
}

.contacts-popup__btn {
  --btn-height: 2.5rem;
  width: 100%;
  margin: 1.1875rem 0 0;
  font-size: .8rem;
  border-radius: var(--radius-sm)
}

.contacts-popup__socials {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.1875rem;
  margin: 1.25rem 0 0
}

.contacts-popup__social-item {
  --icon-width: 1rem;
  list-style: none
}

.contacts-popup__social-item--whatsapp {
  --icon-width: 1.0625rem
}

.contacts-popup__social-item--tiktok {
  --icon-width: 1.125rem
}

.contacts-popup__social-item--vk,.contacts-popup__social-item--youtube {
  --icon-width: 1.25rem
}

.contacts-popup__social-link {
  color: var(--white-100)
}

.contacts-popup__social-icon {
  width: var(--icon-width,1rem);
  object-fit: contain;
  transition: opacity var(--transition-base),transform var(--transition-base)
}

@media (hover: hover) {
  a.contacts-popup__link:hover {
      color:var(--color-accent)
  }

  .contacts-popup__social-icon:hover {
      opacity: .8;
      transform: scale(1.2)
  }

  .contacts-popup__map-action:hover {
      color: var(--color-accent-hover)
  }
}

a.contacts-popup__link:active {
  color: var(--color-accent)
}

.contacts-popup__social-icon:active {
  opacity: .8;
  transform: scale(1.2)
}

.contacts-popup__map-action:active {
  color: var(--color-accent-hover)
}

@media (min-width: 1200px) {
  .contacts-popup {
      transform:translateY(.625rem)
  }

  .contacts-popup.active {
      transform: translateY(0)
  }
}

@media (max-width: 1199px) {
  body.contacts-popup-open {
      overflow-y:hidden
  }

  .contacts-popup {
      position: fixed;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      background: rgb(0 0 0 / .1);
      -webkit-backdrop-filter: blur(.125rem);
      backdrop-filter: blur(.125rem)
  }

  .contacts-popup__wrapper {
      width: 100%;
      max-width: 26.25rem;
      margin: 0 var(--container-padding)
  }
}

.scrolled .header__wrapper {
  padding: 1.25rem 0
}

.word-break {
  word-break: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto
}

.menu {
  --menu-top-offset: -0.6875rem;
  position: absolute;
  top: calc(100% + var(--menu-top-offset));
  left: 0;
  width: 100%;
  z-index: 100;
  background: var(--white-100);
  border: .0625rem solid #5c5c5c;
  border-radius: var(--radius-5xl);
  color: var(--black-100);
  font-family: var(--font-family-quaternary);
  font-weight: 400;
  font-size: var(--text-base);
  line-height: 120%;
  letter-spacing: initial;
  color: var(--black-100);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-base),visibility var(--transition-base)
}

.scrolled .menu {
  --menu-top-offset: 0rem
}

.menu-open .menu {
  opacity: 1;
  visibility: visible
}

.menu__container {
  --window-height: 100dvh;
  --header-full-height: var(--header-height);
  overflow-y: auto;
  max-height: calc(var(--window-height, 100vh) - var(--header-full-height) - var(--menu-top-offset) - .625rem);
  padding: 1.9375rem 2.5rem
}

.scrolled .menu__container {
  --header-full-height: var(--header-height-scrolled)
}

.menu__container::-webkit-scrollbar {
  width: 0;
  background: #fff0
}

.menu__container::-webkit-scrollbar-track {
  background: #fff0
}

.menu__container::-webkit-scrollbar-thumb {
  background: #fff0
}

.menu__container::-webkit-scrollbar-thumb:hover {
  background: #fff0
}

.menu__container {
  scrollbar-width: none
}

.menu__container {
  -ms-overflow-style: none
}

.menu__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3.0625rem
}

.menu-search {
  position: relative;
  flex: 1
}

.menu-search-label {
  position: absolute;
  top: 50%;
  left: 1.25rem;
  transform: translateY(-50%)
}

.menu-search-icon {
  --search-icon-size: 1.4375rem;
  width: var(--search-icon-size);
  height: var(--search-icon-size)
}

.menu-search-input {
  width: 100%;
  padding: .8125rem 1.25rem .6875rem 3.4375rem;
  font-family: var(--font-family-quaternary);
  font-weight: 400;
  font-size: var(--text-base);
  line-height: 150%;
  letter-spacing: -.02em;
  color: var(--black-100);
  border: .0625rem solid #3d3d3d;
  border-radius: var(--radius-5xl);
  background: #fff0
}

.menu-search-input::-webkit-input-placeholder {
  color: gray
}

.menu-search-input::-moz-placeholder {
  color: gray
}

.menu-search-input:-ms-input-placeholder {
  color: gray
}

.menu-search-input::-ms-input-placeholder {
  color: gray
}

.menu-search-input::placeholder {
  color: gray
}

.menu-search-input:focus {
  outline: 0
}

.menu-search-suggestions {
  position: absolute;
  background: rgb(255 255 255 / 35%);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border);
  padding: 1rem;
  list-style: none;
  z-index: 4;
  width: 100%;
  margin-top: .2rem;
  max-height: 29rem;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.menu-search-suggestions::-webkit-scrollbar {
  display: none
}

.menu-search-suggestions__close {
  position: absolute;
  top: 4rem;
  right: -2rem;
  z-index: 4;
  color: #000;
  font-size: var(--text-5xl);
  transition: .2s .1s
}

.menu-search-suggestions__close:hover {
  transform: rotate(180deg)
}

.menu-search-suggestions__link {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-bottom: .4rem;
  padding: .2rem .5rem;
  border-radius: .7rem;
  transition: .2s
}

.menu-search-suggestions__link:hover {
  background: rgb(33 33 33 / 11%)
}

.menu-search-suggestions__img {
  width: 3.5rem;
  background: #fff;
  overflow: hidden;
  border-radius: var(--radius-2xl)
}

.menu-search-suggestions__text {
  font-size: .9rem;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.menu-search-suggestions__price {
  background: #2467e0;
  color: #fff;
  padding: .5rem 1rem;
  border-radius: .4rem
}

.menu__header-nav-list {
  display: flex;
  align-items: center;
  gap: 2.375rem
}

.menu__header-nav-item {
  list-style: none
}

.menu__header-nav-link {
  display: flex;
  align-items: center;
  font-weight: 600;
  transition: color var(--transition-base)
}

.main-catalog {
  border-radius: var(--radius-2xl);
  padding: .8rem 1.5rem;
  color: #000;
  gap: var(--space-4);
  background: #f8f6fb
}

.main-catalog svg {
  fill: #000;
  transition: .2s
}

.main-catalog:hover svg {
  fill: var(--color-accent)
}

.main-catalog:hover {
  background: #fff
}

.menu__header-nav-icon {
  --icon-size: 2.5rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.menu__body {
  display: grid;
  grid-template-columns: 27.1875rem 1fr;
  gap: 3.25rem;
  margin: 3.25rem 0 0;
  position: relative;
  z-index: 2
}

.menu__footer {
  position: relative;
  z-index: 3
}

.menu__services {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: var(--space-10);
  padding: 2.5rem;
  border-radius: var(--radius-5xl);
  background: #f8f6fb
}

.menu__services-item {
  list-style: none
}

.menu__services-card {
  position: relative;
  height: 100%;
  transition: background var(--transition-base)
}

.menu__services-card::before {
  --top-offset: -1.0625rem;
  --left-offset: -1.25rem;
  --bottom-offset: -1.0625rem;
  --right-offset: -1.25rem;
  content: "";
  position: absolute;
  inset: var(--top-offset) var(--right-offset) var(--bottom-offset) var(--left-offset);
  z-index: 1;
  background: var(--white-100);
  border-radius: var(--radius-3xl);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-base),visibility var(--transition-base)
}

.menu__services-card-inner {
  position: relative;
  z-index: 2
}

.menu__services-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  --icon-wrapper-size: 3.125rem;
  width: var(--icon-wrapper-size);
  height: var(--icon-wrapper-size);
  background: #b4b5bd;
  border-radius: var(--radius-sm);
  transition: background var(--transition-base)
}

.menu__services-icon {
  --icon-size: 1.5625rem;
  width: var(--icon-size);
  height: var(--icon-size)
}

.menu__services-title {
  display: inline-block;
  margin: .875rem 0 0;
  font-weight: 600;
  font-size: var(--text-lg);
  line-height: 120%;
  transition: color var(--transition-base)
}

.menu__services-description {
  margin: .9375rem 0 0;
  color: rgb(0 0 0 / .5)
}

.menu__nav {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 2.625rem 1.8125rem
}

.menu-listing {
  position: relative;
  padding-left: 2.6875rem
}

.menu-listing__title {
  display: inline-block;
  margin: 0 0 1.375rem;
  font-weight: 600;
  font-size: var(--text-lg);
  line-height: 1.2;
  transition: color var(--transition-base)
}

.menu-listing__title-icon {
  position: absolute;
  top: -.0625rem;
  left: 0;
  --icon-size: 1.25rem;
  width: var(--icon-size);
  height: var(--icon-size);
  flex: 0 0 var(--icon-size)
}

.menu-listing__items {
  display: grid;
  gap: .6875rem
}

.menu-listing__item {
  list-style: none
}

.menu-listing__link {
  color: rgb(0 0 0 / .5);
  transition: color var(--transition-base)
}

.menu-footer__content {
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding: 1rem 0 0
}

.menu-footer__right {
  display: flex;
  gap: var(--space-4);
  font-family: var(--font-family-secondary);
  font-size: .7rem;
  line-height: 120%;
  letter-spacing: initial;
  color: var(--color-card-background);
  background: var(--black-10);
  padding: .3rem .6rem;
  border-radius: var(--radius-md)
}

.menu-footer__crypto {
  display: flex;
  gap: .2rem;
  align-items: center;
  justify-content: center
}

.menu-footer__crypto-icon {
  -webkit-filter: brightness(.3);
  filter: brightness(.3)
}

.menu-footer__value {
  font-family: var(--font-family-quaternary);
  font-weight: 400;
  font-size: .8rem;
  line-height: 120%;
  letter-spacing: initial;
  color: var(--color-card-background-light);
  background: var(--color-accent-light);
  padding: .2rem .4rem;
  border-radius: var(--radius-md)
}

.menu-footer__left {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .4rem;
  color: var(--color-text-secondary)
}

.menu-footer__info-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: var(--radius-full);
  background: var(--color-accent-light);
  color: var(--color-text-primary);
  font-size: var(--text-xs);
  font-weight: 600;
  cursor: help;
  transition: all 0.2s ease;
  line-height: 1;
  position: relative
}

.menu-footer__info-icon:hover {
  background: var(--color-accent);
  transform: scale(1.1)
}

[data-tooltip]:before,[data-tooltip]:after {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease,transform 0.3s ease;
  z-index: 9999999
}

[data-tooltip]:before {
  content: attr(data-tooltip);
  background: rgb(0 0 0 / .9);
  color: #fff;
  padding: .5rem .75rem;
  border-radius: .375rem;
  font-size: var(--text-xs);
  text-align: center;
  line-height: 1.4;
  white-space: nowrap;
  min-width: 13rem;
  white-space: normal;
  box-shadow: 0 4px 12px rgb(0 0 0 / .15)
}

[data-tooltip]:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid
}

[data-tooltip-position="top"]:before {
  bottom: 130%;
  left: 50%;
  transform: translateX(-50%) translateY(-8px);
  margin-bottom: 8px
}

[data-tooltip-position="top"]:after {
  bottom: 130%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 6px 6px 0 6px;
  border-color: rgb(0 0 0 / .9) #fff0 #fff0 #fff0;
  margin-bottom: 2px
}

[data-tooltip-position="bottom"]:before {
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  margin-top: 8px
}

[data-tooltip-position="bottom"]:after {
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 0 6px 6px 6px;
  border-color: #fff0 #fff0 rgb(0 0 0 / .9) #fff0;
  margin-top: 2px
}

[data-tooltip-position="left"]:before {
  right: 100%;
  top: 50%;
  transform: translateY(-50%) translateX(-8px);
  margin-right: 8px
}

[data-tooltip-position="left"]:after {
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  border-width: 6px 0 6px 6px;
  border-color: #fff0 #fff0 #fff0 rgb(0 0 0 / .9);
  margin-right: 2px
}

[data-tooltip-position="right"]:before {
  left: 100%;
  top: 50%;
  transform: translateY(-50%) translateX(8px);
  margin-left: 8px
}

[data-tooltip-position="right"]:after {
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  border-width: 6px 6px 6px 0;
  border-color: #fff0 rgb(0 0 0 / .9) #fff0 #fff0;
  margin-left: 2px
}

[data-tooltip]:hover:before,[data-tooltip]:hover:after {
  opacity: 1;
  pointer-events: auto
}

[data-tooltip-position="top"]:hover:before {
  transform: translateX(-50%) translateY(0)
}

[data-tooltip-position="bottom"]:hover:before {
  transform: translateX(-50%) translateY(0)
}

[data-tooltip-position="left"]:hover:before {
  transform: translateY(-50%) translateX(0)
}

[data-tooltip-position="right"]:hover:before {
  transform: translateY(-50%) translateX(0)
}

.hero {
  position: relative;
  padding: 13.75rem 0 12.25rem;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  align-items: center;
  background: var(--color-background)
}

.hero__bg {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 100vw;
  height: 100%;
  object-fit: cover;
  pointer-events: none
}

.hero__badge,.hero__title,.hero__description,.hero__buttons,.hero__divider,.hero__partners {
  position: relative;
  z-index: 2
}

.hero__badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-5);
  padding: .625rem;
  background: rgb(255 255 255 / .1);
  border: .0625rem solid var(--color-border);
  border-radius: var(--radius-lg);
  margin-bottom: 3.125rem
}

.hero__badge-accent {
  display: flex;
  align-items: center;
  gap: .3125rem;
  padding: .625rem;
  background: var(--color-accent);
  color: var(--color-text-primary);
  border-radius: var(--radius-lg);
  font-family: var(--font-family)
}

.hero__badge-icon {
  --icon-size: 0.875rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.hero__badge-text {
  color: var(--color-text-primary);
  font-size: var(--text-xs);
  letter-spacing: -.0225rem
}

.hero__badge-description {
  color: var(--color-text-secondary);
  font-size: var(--text-base);
  font-weight: 500;
  letter-spacing: -.0262rem
}

.hero__title {
  margin: 0 0 2.875rem;
  font-family: var(--font-family-tertiary);
  font-size: var(--text-7xl);
  font-weight: 700;
  line-height: 1.5;
  color: var(--color-text-primary);
  letter-spacing: -.06rem;
  text-transform: uppercase
}

.hero__description {
  max-width: 31.9375rem;
  margin: 0 0 4.4375rem;
  font-size: var(--text-lg);
  font-weight: 500;
  color: var(--color-text-secondary);
  letter-spacing: -.0338rem
}

.hero__buttons {
  display: flex;
  gap: var(--space-6);
  margin-bottom: 4.3125rem
}

.hero__divider {
  width: 46.125rem;
  height: .0625rem;
  background: -o-linear-gradient(left,#fff0 0%,#ffffff 50%,#fff0 100%);
  background: -webkit-gradient(linear,left top,right top,from(#fff0),color-stop(50%,#ffffff),to(#fff0));
  background: linear-gradient(90deg,#fff0 0%,#ffffff 50%,#fff0 100%);
  margin-bottom: 4.4375rem
}

.hero__partners {
  display: flex;
  gap: var(--space-11);
  align-items: center
}

.hero__partner--whatsminer {
  width: 19.3125rem;
  height: 2.1875rem
}

.hero__partner--bitmain {
  width: 12.5625rem;
  height: 1.5625rem
}

.hero__partner--canaan {
  width: 8.1875rem;
  height: 2.1875rem
}

.channel::before,.projects::before,.recommends::before,.media::before,.top-miners::before,.mining-hotels::before,.catalog::before {
  position: absolute;
  top: -32.75rem;
  left: -10.25rem;
  z-index: 0;
  content: "";
  width: 47rem;
  height: 131.5rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  transform: rotate(32deg);
  pointer-events: none
}

.hero::after {
  top: -45.25rem;
  left: auto;
  right: -4rem;
  transform: rotate(-49deg)
}

.catalog::before {
  z-index: -1
}

.recommends {
  position: relative;
  background: var(--color-background)
}

.recommends__container {
  position: relative;
  z-index: 1;
  padding-top: 8.75rem;
  margin: 0 0 4.375rem
}

.recommends__header {
  display: flex;
  justify-content: space-between;
  align-items: center
}

.recommends__expert {
  display: flex;
  align-items: center;
  gap: var(--space-5);
  font-family: var(--font-family-tertiary);
  color: var(--color-text-primary)
}

.recommends__expert-image {
  --expert-image-size: 5.3125rem;
  width: var(--expert-image-size);
  height: var(--expert-image-size);
  border-radius: var(--radius-full);
  object-fit: cover
}

.recommends__expert-name {
  font-weight: 700
}

.recommends__expert-title {
  font-size: var(--text-xs);
  font-weight: 500
}

.recommends__badge {
  display: inline-flex;
  padding: .6875rem 1.5625rem;
  background-color: rgb(255 255 255 / .1);
  border: .0625rem solid var(--color-border);
  border-radius: 2.625rem;
  color: var(--color-text-primary);
  font-weight: 600
}

.recommends__content {
  display: flex;
  gap: 3.875rem;
  margin-bottom: 1.25rem
}

.recommends__content-body {
  flex: 1 1
}

.recommends__title {
  flex: 0 0 36rem;
  margin: 0;
  padding: 1.875rem 0 0
}

.recommends__description {
  max-width: 42.9375rem;
  margin: 1.25rem 0 0
}

.slider-navigation {
  -ms-grid-row-align: end;
  align-self: end;
  display: flex;
  gap: .8125rem
}

.slider-navigation__button {
  --recommends-button-size: 4.5rem;
  --recommends-button-icon-size: 1.5rem;
  width: var(--recommends-button-size);
  height: var(--recommends-button-size);
  border-radius: var(--radius-full);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  background-color: var(--color-accent);
  color: var(--color-text-primary);
  transition: background-color var(--transition-base)
}

.slider-navigation__button:disabled {
  background-color: var(--color-gray);
  color: var(--color-text-tertiary);
  cursor: default
}

.slider-navigation--light .slider-navigation__button:disabled {
  background-color: var(--color-accent-light);
  color: var(--color-text-primary)
}

.slider-navigation__button-icon {
  width: var(--recommends-button-icon-size);
  height: var(--recommends-button-icon-size)
}

.recommends__slider {
  position: relative;
  margin-top: 10.75rem;
  padding-bottom: 2.5rem
}

.recommends__swiper,.recommends__swiper .swiper-wrapper {
  overflow: visible
}

.swiper--overflow-visible,.swiper--overflow-visible .swiper-wrapper {
  overflow: visible!important
}

.recommends__slide {
  max-width: 32.375rem;
  height: auto
}

.miner-card {
  display: flex;
  flex-direction: column;
  justify-content: end;
  position: relative;
  background-color: var(--color-card-background);
  border-radius: var(--radius-3xl);
  max-width: 100%;
  height: 100%
}

.miner-card--reversed {
  overflow: hidden
}

.miner-card--highlighted {
  background-color: var(--color-accent)
}

.miner-card--light {
  background-color: var(--white-100);
  color: var(--color-text-dark)
}

.miner-card--dark {
  background-color: var(--color-card-background-dark);
  color: var(--color-text-primary)
}

.miner-card__rating {
  position: absolute;
  top: 1.3125rem;
  left: 1.5rem;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: var(--space-2)
}

.miner-card__star {
  --icon-size: 1.375rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.miner-card__rating-value {
  position: relative;
  top: .125rem;
  font-family: var(--font-family-secondary);
  font-size: var(--text-base);
  font-weight: 600
}

.miner-card__image-wrapper {
  position: relative;
  width: 100%;
  height: 22.3125rem;
  margin: 0 0 auto
}

a.miner-card__image-link {
  width: 100%;
  height: 100%;
  display: block
}

.miner-card--reversed .miner-card__image-wrapper {
  position: relative;
  flex: 1 1;
  height: 27.3125rem;
  min-height: 27.3125rem;
  margin: auto 0 0
}

.miner-card--reversed .miner-card__image-wrapper::before {
  --gradient-size: 38.8125rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 1;
  content: "";
  width: var(--gradient-size);
  height: var(--gradient-size);
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(255 255 255 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(255 255 255 / .3) 0%,#fff0 100%);
  pointer-events: none
}

.miner-card--reversed.miner-card--light .miner-card__image-wrapper::before {
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(0 170 255 / .3) 0%,#fff0 30%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(0 170 255 / .3) 0%,#fff0 30%)
}

.miner-card__image {
  position: absolute;
  top: -4.375rem;
  right: 0;
  z-index: 2;
  width: 26rem;
  height: 30.375rem;
  object-fit: contain;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

.miner-card__image--t21 {
  width: 26rem;
  height: 30.375rem
}

.miner-card__image--m60 {
  top: -11.875rem;
  width: 34.75rem;
  height: 46.875rem
}

.miner-card--reversed .miner-card__image {
  top: auto;
  bottom: -6.875rem;
  right: auto;
  left: .625rem;
  width: 33.125rem;
  height: 38.75rem
}

.miner-card--reversed .miner-card__image--top-s21 {
  bottom: -13.625rem;
  left: -4.75rem;
  width: 55.5rem;
  height: 55.5rem
}

.miner-card--reversed .miner-card__image--top-m60 {
  bottom: -14.125rem;
  left: -3.4375rem;
  width: 61.375rem;
  height: 51.75rem
}

.miner-card__content {
  position: relative;
  z-index: 3;
  padding: 0 2.3125rem 2.0625rem
}

.miner-card--reversed .miner-card__content {
  padding: 1.4375rem 2rem 0
}

.miner-card__brand {
  margin: 0;
  font-family: var(--font-family-secondary);
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1.5
}

.miner-card__model {
  display: inline-block;
  margin: .6875rem 0 0;
  font-family: var(--font-family-secondary);
  font-size: var(--text-2xl);
  font-weight: 600;
  line-height: 1.5
}

.miner-card__model:hover {
  color: var(--color-accent)
}

.miner-card__description {
  margin: .875rem 0 0;
  font-size: var(--text-base);
  letter-spacing: -.0262rem
}

.miner-card__price {
  padding: .6875rem 1.6875rem;
  margin: 1.4375rem 0 0;
  display: inline-block;
  font-family: var(--font-family-tertiary);
  font-size: var(--text-base);
  font-weight: 700;
  border-radius: var(--radius-md);
  background-color: var(--color-white);
  color: var(--color-text-dark)
}

.miner-card--light .miner-card__price {
  background-color: var(--color-text-dark);
  color: var(--color-text-primary)
}

.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal {
  left: calc(var(--slider-gap) / 2);
  width: calc(100% - var(--slider-gap))
}

.recommends::before {
  position: absolute;
  top: -4.5rem;
  left: -33.375rem
}

.recommends::after,.mining-hotels::after,.catalog::after {
  content: "";
  position: absolute;
  top: -1.3125rem;
  right: -20.875rem;
  z-index: 0;
  width: 83rem;
  height: 83rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  pointer-events: none
}

.catalog::after {
  top: -8.3125rem;
  right: -42rem;
  z-index: -1
}

.channel {
  position: relative;
  padding: 6.25rem 0
}

.channel::after,.media::after,.projects::after {
  content: "";
  position: absolute;
  top: -10.625rem;
  left: 25rem;
  z-index: 0;
  width: 83rem;
  height: 83rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .1) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .1) 0%,#fff0 100%)
}

.channel::before {
  top: -30rem;
  left: -23.875rem
}

.channel__container {
  position: relative;
  z-index: 1;
  padding: 0
}

.channel__header {
  display: flex;
  justify-content: space-between;
  gap: 2.25rem;
  padding: 0 var(--container-padding)
}

.channel__header::before {
  content: "";
  position: absolute;
  top: -1.9375rem;
  left: 0;
  right: 0;
  z-index: 1;
  width: 100%;
  height: .0625rem;
  background: var(--color-border-dark)
}

.channel__info {
  flex: 1 0 36rem
}

.channel__logo {
  --channel-logo-size: 8.0625rem;
  width: var(--channel-logo-size);
  height: var(--channel-logo-size);
  border-radius: var(--radius-full);
  border: .0625rem solid var(--white-100)
}

.channel__content {
  padding: 0 0 0 .9375rem
}

.channel__title {
  margin: 1.875rem 0 0;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: -.0525rem
}

.channel__meta {
  color: var(--color-text-secondary)
}

.channel__username {
  color: var(--color-text-primary)
}

.channel__stats {
  margin: 1rem 0 0
}

.channel__desc {
  margin: .5rem 0 0
}

.channel__button {
  margin: 1rem 0 0
}

.channel__sections {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 5.125rem;
  margin: 4.0625rem 0 0;
  padding: 0 0 0 var(--container-padding)
}

.channel__sections::before,.channel__sections::after {
  content: "";
  position: absolute;
  top: -1.9375rem;
  left: var(--container-padding);
  right: var(--container-padding);
  z-index: 1;
  width: calc(100% - var(--container-padding) * 2);
  height: .0625rem;
  background: var(--color-border-dark)
}

.channel__sections::after {
  top: calc(100% + 3.8125rem)
}

.channel__section--recommend {
  flex: 0 0 48.5rem
}

.channel__section-title {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 1.125rem;
  font-size: var(--text-3xl);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.035rem
}

.channel__section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--container-padding) 0 0
}

.channel__section--shipments .channel__section-title {
  margin-left: -.4375rem
}

.channel__section-title-icon {
  --icon-size: 2.375rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.swiper-horizontal>.swiper-scrollbar.channel__section-head-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal.channel__section-head-scrollbar {
  --swiper-scrollbar-drag-bg-color: var(--color-accent);
  --swiper-scrollbar-bg-color: var(--white-100);
  position: static;
  width: 16.5rem
}

.main-video__poster-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}

a.main-video__poster-link {
  width: 100%;
  display: block;
  height: 0;
  padding-bottom: 56.25%
}

.video-list {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 2.75rem 1.375rem
}

.video-card__thumb {
  position: relative;
  height: 0;
  padding-bottom: 56.25%
}

.video-card__thumb-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.video-card__title,.shipment-card__desc {
  margin: .5rem 0 0;
  font-size: var(--text-lg);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.02rem
}

.video-card__title {
  display: inline-block
}

.video-card__meta,.shipment-card__meta {
  color: var(--color-text-secondary);
  margin: .625rem 0 0;
  letter-spacing: -.0293rem
}

.main-video {
  display: flex;
  justify-content: space-between;
  gap: 2.25rem
}

.main-video__player-wrapper {
  flex: 1 0 40.4375rem
}

.main-video__player {
  position: relative;
  width: 100%
}

.main-video__player-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.main-video__title {
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.02rem
}

.main-video__views {
  margin: .875rem 0 0;
  font-size: var(--text-base);
  color: var(--color-text-secondary)
}

.main-video__desc {
  margin: 1rem 0 0;
  font-size: var(--text-base)
}

.shipment-card__video-preview {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 135%
}

.shipment-card__thumb-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.shipment-card__desc {
  margin: 1.1875rem 0 0
}

.shipment-card__meta {
  margin: 1rem 0 0
}

.shipment-list__slider {
  --slider-gap: 1.3125rem;
  margin: 0 calc(var(--slider-gap) / -2)
}

.shipment-list__slide {
  max-width: 26.5625rem;
  padding: 0 calc(var(--slider-gap) / 2)
}

.projects {
  position: relative;
  padding: 10.25rem 0
}

.projects::before {
  top: -15rem;
  left: -17.5rem
}

.projects__container {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 28.625rem 1fr;
  gap: 4.1875rem
}

.projects__title {
  margin: 1.125rem 0 0
}

.projects__desc {
  max-width: 24.375rem;
  margin: .75rem 0 0
}

.projects__button {
  margin: 2.9375rem 0 0
}

.projects__list {
  display: grid;
  gap: 3.625rem
}

.solution-card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 24.4375rem;
  gap: var(--space-5)
}

.solution-card+.solution-card::before {
  content: "";
  position: absolute;
  top: -1.8125rem;
  right: 0;
  width: 70.6%;
  height: .0625rem;
  background: var(--color-border-dark)
}

.solution-card__info {
  position: relative;
  overflow: hidden;
  padding: 5.0625rem 2.0625rem 6rem;
  border-radius: 1.125rem;
  background: var(--color-card-background-light);
  color: var(--color-text-dark)
}

.solution-card__info::before {
  content: "";
  position: absolute;
  top: -3.625rem;
  right: -13.1875rem;
  width: 47.375rem;
  height: 47.375rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .2) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .2) 0%,#fff0 100%);
  pointer-events: none
}

.solution-card--dark .solution-card__info {
  background: var(--color-card-background);
  color: var(--white-100)
}

.solution-card--dark .solution-card__info::before {
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(255 255 255 / .2) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(255 255 255 / .2) 0%,#fff0 100%)
}

.solution-card__tag {
  display: inline-flex;
  padding: .125rem .5625rem;
  justify-content: center;
  align-items: center;
  gap: .5625rem;
  border-radius: .5625rem;
  border: .0625rem solid var(--color-border);
  background: var(--white-10);
  font-size: .9375rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -.0187rem
}

.solution-card__title {
  margin: 1.25rem 0 0;
  font-family: var(--font-family-secondary);
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: -.0271rem
}

.solution-card__desc {
  max-width: 17.625rem;
  margin: .75rem 0 0;
  font-size: var(--text-sm);
  letter-spacing: -.0237rem
}

.solution-card__image {
  width: 100%;
  height: 100%;
  border-radius: .875rem;
  object-fit: cover
}

.solution-card__images {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 1.125rem .5rem
}

.solution-card__info-body {
  position: relative;
  z-index: 2
}

.solution-card__info-image {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none
}

.solution-card__info-image--container {
  bottom: -3.75rem;
  right: -8.9375rem;
  width: 39rem;
  height: 38.8125rem
}

.solution-card__info-image--gas {
  bottom: -6.25rem;
  right: -14.6875rem;
  width: 45.25rem;
  height: 31.0625rem
}

.solution-card__info-image--cooling {
  bottom: -14.4375rem;
  right: -12.5rem;
  width: 40.1875rem;
  height: 40.1875rem
}

.solution-card__info-image--hotel {
  bottom: -5.25rem;
  right: -13.125rem;
  width: 45.375rem;
  height: 25.5rem
}

.media {
  position: relative;
  padding: 7.5rem 0
}

.media__container {
  position: relative;
  z-index: 1
}

.media__header {
  display: flex;
  gap: 4.5rem
}

.media__title {
  margin: 1.0625rem 0 0
}

.media__description {
  max-width: 46.5rem
}

.media-list {
  display: grid;
  gap: 1.4375rem;
  margin: 3.75rem 0 0rem
}

.media-card {
  --media-card-padding-bottom: 1.125rem;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: 1.0625rem 1rem var(--media-card-padding-bottom) 0;
  border-radius: 1.125rem;
  background: var(--color-card-background)
}

.media-card--light {
  background: var(--color-card-background-light);
  color: var(--color-text-dark)
}

.media-card__content {
  flex: 1 1;
  display: flex;
  align-items: center;
  gap: 1.9375rem
}

.media-card__photo {
  display: flex;
  justify-content: center;
  flex: 0 0 31.25rem;
  height: 100%
}

.media-card__photo-img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: contain
}

.media-card__photo-img--erik-davidich {
  width: 32.25rem;
  height: 19.5rem
}

.media-card__photo-img--timati {
  left: 3.375rem;
  width: 26.9375rem;
  height: 18.3125rem
}

.media-card__photo-img--miner-notes {
  left: 3.125rem;
  width: 24.6875rem;
  height: 19.25rem
}

.media-card__photo-img--rbk {
  top: 50%;
  left: 4.75rem;
  width: 21.4375rem;
  height: 5.75rem;
  transform: translateY(-50%)
}

.media-card__label {
  display: inline-block;
  padding: .5rem .5625rem;
  font-size: var(--text-base);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.0175rem;
  border-radius: .5625rem;
  border: .0625rem solid var(--color-border);
  background: var(--white-10)
}

.media-card__title {
  margin: 1.125rem 0 0;
  font-family: var(--font-family-secondary);
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -.0271rem
}

.media-card__description {
  max-width: 26.375rem;
  margin: 1rem 0 0;
  font-size: var(--text-sm);
  letter-spacing: -.0237rem
}

.media-card__video {
  --card-preview-radius: 1.25rem;
  --button-size: 7.5rem;
  display: block;
  overflow: hidden;
  width: 24.125rem;
  height: 0;
  padding-bottom: 74%;
  position: relative;
  z-index: 1;
  border-radius: var(--card-preview-radius);
  border: .0625rem solid var(--color-border-darker)
}

.media-card__video::before {
  background: url(/catalog/view/theme/default/image/play2.svg) no-repeat center / 2.5rem 2.5rem
}

.media-card__video-preview {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--card-preview-radius);
  transition: transform var(--transition-base)
}

.media__footer {
  display: flex;
  justify-content: center;
  margin: 4.75rem 0 0
}

.media__more-btn {
  --btn-height: 5.0625rem;
  max-width: 72.3125rem;
  width: 100%;
  font-family: var(--font-family-secondary);
  font-size: .9375rem;
  letter-spacing: -.02rem;
  border-radius: var(--radius-lg);
  border: none
}

.top-miners {
  position: relative;
  padding: 5.9375rem 0 4.6875rem;
  background: var(--color-background-light);
  color: var(--color-text-dark)
}

.top-miners::before {
  left: -30.25rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .2) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .2) 0%,#fff0 100%)
}

.top-miners__container {
  position: relative;
  z-index: 1;
  padding-right: 0
}

.top-miners__content {
  display: grid;
  gap: 1.9375rem;
  grid-template-columns: 42.625rem 1fr
}

.top-miners__header {
  padding: 3.1875rem 1.5625rem 1.6875rem 3.25rem;
  border-radius: var(--radius-3xl);
  border: .0625rem solid var(--color-text-dark)
}

.top-miners__title {
  margin: 0
}

.top-miners__category-label {
  margin: .375rem 0 0;
  font-family: var(--font-family);
  font-weight: 500
}

.top-miners__category-tabs,.top-miners__subcategories {
  display: flex;
  flex-wrap: wrap;
  gap: .6875rem
}

.top-miners__category-tabs {
  margin: 1.9375rem 0 0
}

.top-miners__category-tab,.top-miners__subcategory {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .625rem 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  border-radius: 3.875rem;
  color: var(--color-text-dark);
  border: .0625rem solid var(--color-text-dark);
  letter-spacing: -.03rem;
  transition: background-color var(--transition-base)
}

.top-miners__category-tab.active,.top-miners__subcategory.active {
  color: var(--color-text-primary);
  background: var(--black-100)
}

.top-miners__subcategories {
  margin: 1.375rem 0 0
}

.top-miners__description {
  padding-right: 1.25rem;
  margin: 3.625rem 0 0
}

.top-miners__slider-wrapper {
  overflow: hidden;
  min-width: 0
}

.top-miners__slider {
  --slider-gap: 1.8125rem;
  height: 100%;
  min-width: 0
}

.top-miners__swiper {
  height: 100%
}

.top-miners__slide {
  width: 28.0625rem
}

.top-miners__navigation {
  margin: 3.8125rem 0 0
}

.mining-hotels {
  position: relative;
  padding: 5.75rem 0;
  background: var(--color-background)
}

.mining-hotels::before {
  top: -19.75rem;
  left: -20.25rem
}

.mining-hotels::after {
  top: -5.3125rem;
  right: 12.125rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .1) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .1) 0%,#fff0 100%)
}

.mining-hotels__container {
  position: relative;
  z-index: 2
}

.mining-hotels__sidebar {
  padding: 1.5rem 0 0
}

.mining-hotels__content {
  display: grid;
  grid-template-columns: 28.625rem 1fr;
  gap: 6.8875rem
}

.mining-hotels__title {
  margin: 1.125rem 0 0
}

.mining-hotels__description {
  max-width: 23.575rem;
  margin: .75rem 0 0
}

.mining-hotels__buttons {
  display: flex;
  gap: var(--space-6);
  margin: 2.9375rem 0 0
}

.mining-hotels__badge {
  padding-left: 1.75rem;
  padding-right: 1.75rem
}

.mining-hotels__cards {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  gap: var(--space-5)
}

.hotel-card {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  border-radius: 1.125rem;
  overflow: hidden;
  background-color: var(--color-card-background)
}

.hotel-card:nth-child(2n) {
  flex-direction: row
}

.hotel-card--blue {
  background-color: var(--color-accent)
}

.hotel-card__media {
  flex: 1 1;
  height: 100%;
  padding-bottom: 0
}

.hotel-card::before {
  content: "";
  position: absolute;
  top: -12.4375rem;
  right: -10rem;
  width: 47.375rem;
  height: 47.375rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(255 255 255 / .2) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(255 255 255 / .2) 0%,#fff0 100%);
  pointer-events: none
}

.hotel-card:nth-child(2n)::before {
  right: auto;
  left: -10rem
}

.hotel-card__image {
  position: absolute;
  top: 38%;
  right: -16.3rem;
  z-index: 2;
  width: 62.5rem;
  height: 62.5rem;
  object-fit: contain;
  transform: translateY(-50%);
  pointer-events: none
}

.hotel-card:nth-child(2n) .hotel-card__image {
  top: 45%;
  right: auto;
  left: -9.4875rem
}

.hotel-card__content {
  flex: 0 0 27.625rem;
  position: relative;
  z-index: 3;
  padding: 1.875rem 2.0625rem 2rem
}

.hotel-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .3125rem .6875rem;
  border-radius: .5625rem;
  background-color: var(--white-100);
  color: var(--color-text-dark-secondary);
  font-size: var(--text-base)
}

.hotel-card__title {
  margin: 1.25rem 0 0;
  font-family: var(--font-family-secondary);
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -.0271rem
}

.hotel-card__description {
  max-width: 23.5rem;
  margin: .75rem 0 0;
  font-size: var(--text-sm);
  letter-spacing: -.0237rem
}

.hotel-card__features {
  display: flex;
  gap: .8125rem;
  margin: 1.4375rem 0 0
}

.hotel-card__feature {
  display: flex;
  align-items: center;
  gap: var(--space-2)
}

.hotel-card__feature-icon {
  flex: 0 0 1.375rem;
  width: 1.375rem;
  height: 1.375rem;
  object-fit: contain
}

.hotel-card__feature-icon--power {
  flex: 0 0 .6875rem;
  width: .6875rem;
  height: 1.25rem
}

.hotel-card__feature-text {
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: -.0237rem
}

.about-us {
  position: relative;
  padding: 6.625rem 0 4.75rem;
  background: var(--color-background-light)
}

.about-us::before {
  overflow: hidden;
  content: "";
  position: absolute;
  top: -15rem;
  left: -17.5rem;
  z-index: 0;
  width: 47rem;
  height: 131.5rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .2) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .2) 0%,#fff0 100%);
  transform: rotate(32deg);
  pointer-events: none
}

.about-us__container {
  position: relative;
  z-index: 1
}

.about-us__title {
  margin: 1.125rem 0 0;
  color: var(--color-text-dark)
}

.about-us__description {
  max-width: 39.6875rem;
  margin: .75rem 0 0;
  color: var(--color-text-dark)
}

.about-us__cards {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: var(--space-5);
  margin-top: 3.875rem
}

.about-us__card {
  flex: 1 1
}

.about-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 3.6rem 2rem;
  border-radius: var(--radius-3xl);
  overflow: hidden;
  background-color: var(--color-card-background-dark);
  color: var(--color-text-primary)
}

.about-card--light {
  background-color: var(--white-100);
  color: var(--color-text-dark)
}

.about-card__content {
  position: relative;
  z-index: 3
}

.about-card__tag {
  font-family: var(--font-family-secondary);
  font-size: var(--text-base);
  font-weight: 600
}

.about-card__title {
  margin: .9375rem 0 0;
  font-family: var(--font-family-secondary);
  font-size: var(--text-2xl);
  font-weight: 600;
  line-height: 150%;
  letter-spacing: -.03rem
}

.about-card__description {
  margin: .625rem 0 0;
  font-size: .9375rem;
  max-width: 22.25rem;
  color: #eeeef2;
  font-size: var(--text-base);
  letter-spacing: -.0262rem
}

.about-card--light .about-card__description {
  color: var(--color-text-dark)
}

.about-card::before {
  content: "";
  position: absolute;
  top: 58%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 39.5rem;
  height: 39.5rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(255 255 255 / .2) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(255 255 255 / .2) 0%,#fff0 100%);
  z-index: 1;
  pointer-events: none
}

.about-card__image-wrapper {
  min-height: 26.0625rem
}

.about-card__image {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 2;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
  transform: translate(-50%,0)
}

.about-card__image--1 {
  bottom: -12.875rem;
  left: 62%;
  width: 34.625rem;
  height: 44.5625rem
}

.about-card__image--2 {
  bottom: -.35rem;
  left: 59%;
  width: 44.625rem;
  height: 27.25rem
}

.about-card__image--3 {
  bottom: 0;
  left: 36%;
  width: 48.375rem;
  height: 29.375rem
}

.about-card__image--4 {
  bottom: -1.875rem;
  left: 52%;
  width: 31.25rem;
  height: 31.4375rem
}

.footer {
  position: relative;
  padding: 9.5rem 0;
  background-color: var(--color-background);
  color: var(--color-text-primary);
  font-family: var(--font-family-secondary)
}

.footer::before,.footer::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none
}

.footer::before {
  top: -32.75rem;
  left: -20.25rem;
  width: 47rem;
  height: 131.5rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .15) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .15) 0%,#fff0 100%);
  transform: rotate(32deg)
}

.footer::after {
  top: -36rem;
  right: -33rem;
  width: 83rem;
  height: 83rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .05) 0%,rgb(38 98 246 / .02) 60%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .05) 0%,rgb(38 98 246 / .02) 60%,#fff0 100%)
}

.footer__wrapper {
  display: grid;
  grid-template-columns: 63.5rem 1fr;
  gap: 6.1875rem
}

.footer__container {
  position: relative;
  z-index: 1
}

.footer__card {
  padding: 4.375rem 3.6875rem;
  border-radius: 1.125rem;
  background: var(--white-100);
  color: var(--color-text-dark)
}

.footer__logo-img {
  width: 15.9375rem;
  height: 2rem;
  object-fit: contain
}

.footer__description {
  max-width: 28.125rem;
  margin: 1.3125rem 0 0;
  color: inherit;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: -.03rem
}

.footer__nav {
  display: grid;
  grid-template-columns: repeat(3,13.8125rem);
  gap: 5.375rem 4rem;
  margin: 4.3125rem 0 0
}

.footer__column {
  display: flex;
  flex-direction: column;
  gap: var(--space-3-5)
}

.footer__column--full {
  -ms-grid-column-span: 2;
  grid-column: span 2
}

.footer__title {
  margin: 0 0 1rem;
  font-size: var(--text-xl);
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: -.0375rem
}

.footer__menu {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0
}

.footer__menu-link {
  display: inline-block;
  padding: .375rem 0;
  font-size: var(--text-md);
  font-weight: 600;
  color: inherit;
  transition: color var(--transition-base)
}

.footer__contact-title,.footer__requisites-title {
  margin: 0 0 3rem;
  font-size: var(--text-xl);
  font-weight: 900;
  letter-spacing: -.0375rem;
  line-height: 1.4
}

.footer__requisites-title {
  margin-bottom: 1.8125rem
}

.footer__contact-list {
  display: grid;
  grid-template-columns: 9.9375rem 1fr;
  gap: 2.6875rem 7.375rem
}

.cookie-consent {
  position: fixed;
  bottom: 5rem;
  left: 1rem;
  right: 1rem;
  z-index: 1100;
  max-width: 35rem;
  margin: 0 auto;
  padding: 1rem 1.125rem;
  border-radius: var(--radius-xl);
  background: var(--color-card-background,#1e1e1e);
  color: var(--color-text-primary,#f5f5f5);
  box-shadow: 0 .5rem 2rem rgb(0 0 0 / .28);
  font-size: var(--text-base);
  line-height: 1.4;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px)
}

.cookie-consent__content {
  display: flex;
  gap: var(--space-3);
  align-items: flex-start;
  flex-wrap: wrap
}

.cookie-consent__text {
  flex: 1 1 260px
}

.cookie-consent__text a {
  color: var(--color-accent,#4da3ff);
  text-decoration: underline
}

.cookie-consent__actions {
  display: flex;
  gap: var(--space-2);
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end
}

.cookie-consent__button {
  --btn-height: auto;
  padding: .5rem .75rem;
  min-height: 0;
  line-height: 1.2;
  border-radius: var(--radius-md)
}

.text-danger {
  color: red
}

@media (max-width: 575px) {
  .cookie-consent {
      left:.5rem;
      right: .5rem;
      padding: .875rem 1rem
  }

  .cookie-consent__actions {
      width: 100%;
      justify-content: flex-start
  }
}

.footer__contact-item,.footer__requisites-item {
  font-size: var(--text-md);
  font-weight: 600;
  line-height: 1.4
}

.footer__contact-item {
  display: flex;
  flex-direction: column;
  gap: var(--space-1-5)
}

.footer__contact-text {
  color: var(--color-text-primary)
}

.footer__contact-link {
  display: inline-block;
  color: var(--color-text-tertiary);
  transition: color var(--transition-base)
}

.footer__requisites {
  display: grid;
  gap: var(--space-1)
}

.footer__contacts {
  display: flex;
  flex-direction: column;
  gap: 5.3125rem;
  padding: 4.75rem 0 0
}

.special-offer {
  margin-bottom: 3.75rem
}

.special-offer__card {
  position: relative;
  width: 100%;
  padding: 2.1875rem 2.1875rem;
  background-color: #191e20;
  border-radius: var(--radius-5xl);
  overflow: hidden
}

.special-offer__close {
  --close-icon-size: 1.5rem;
  --close-icon-offset: 1.5625rem;
  position: absolute;
  top: var(--close-icon-offset);
  right: var(--close-icon-offset);
  z-index: 3;
  width: var(--close-icon-size);
  height: var(--close-icon-size);
  background: #fff0;
  border: none;
  cursor: pointer;
  padding: 0
}

.special-offer__close-icon {
  width: var(--close-icon-size);
  height: var(--close-icon-size);
  object-fit: contain;
  color: #505050;
  transition: color var(--transition-base)
}

.special-offer__content {
  display: flex;
  flex-direction: column;
  gap: 1.9375rem
}

.special-offer__label {
  display: block;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  letter-spacing: -.02em;
  color: #fff;
  margin-bottom: .625rem
}

.special-offer__title {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-3xl);
  line-height: 1.3;
  letter-spacing: -.02em;
  color: #fff;
  margin: 0 0 1.1875rem
}

.special-offer__description {
  max-width: 28.4375rem;
  color: #fff;
  margin: 0
}

.special-offer__title,.special-offer__label,.special-offer__description {
  position: relative;
  z-index: 2
}

.special-offer__social {
  position: relative;
  z-index: 2;
  display: flex;
  gap: .4375rem
}

.special-offer__social-link {
  --social-icon-size: 3.3125rem;
  width: var(--social-icon-size);
  height: var(--social-icon-size);
  border-radius: 2.5625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgb(0 0 0 / .5);
  transition: background-color var(--transition-base)
}

.special-offer__social-link--phone {
  background-color: #484848
}

.special-offer__social-icon {
  --icon-size-x: 1.625rem;
  --icon-size-y: 1.625rem;
  flex: 0 0 var(--icon-size-x);
  width: var(--icon-size-x);
  height: var(--icon-size-y);
  object-fit: contain
}

.special-offer__social-icon--mail {
  --icon-size-x: 1.5625rem
}

.special-offer__social-icon--telegram {
  --icon-size-x: 1.4375rem;
  --icon-size-y: 1.375rem
}

.special-offer__social-icon--operator {
  width: 100%;
  height: 100%;
  border-radius: var(--radius-full);
  object-fit: cover
}

.special-offer__image {
  position: absolute;
  top: -9.25rem;
  right: -5.25rem;
  width: 51.5rem;
  height: 45.1875rem;
  object-fit: contain;
  transform: rotate(-21deg)
}

.breadcrumbs {
  margin-bottom: 3rem
}

.breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) .875rem;
  align-items: center;
  font-size: var(--text-base);
  color: #5d5d5d
}

.breadcrumbs__link {
  color: inherit;
  transition: color var(--transition-base)
}

.breadcrumbs__separator {
  flex: 0 0 .375rem;
  width: .375rem;
  height: .625rem
}

.catalog {
  top: -21.25rem;
  left: -30rem
}

.catalog__header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-1-5) 2.375rem;
  margin-bottom: 2.5rem
}

.catalog__title {
  font-size: 2.8125rem;
  font-weight: 700;
  margin: 0;
  letter-spacing: -.03em
}

.catalog__count {
  font-size: var(--text-2xl);
  color: var(--color-accent)
}

.categories {
  display: flex;
  gap: var(--space-2-5);
  margin: 2.1875rem 0 2.1875rem;
  flex-wrap: wrap
}

.categories__item.active {
  background-color: var(--color-accent)
}

.filters {
  margin: 2.4375rem 0 0
}

.filters,.filters__controls,.filters__active,.filters__list {
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--space-2-5)
}

@supports (display: contents) {
  .filters__controls,.filters__active,.filters__list {
      display:contents
  }
}

#reviewForm {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: 1rem
}

#reviewForm .form-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-2)
}

#reviewForm label {
  font-weight: 600;
  color: var(--color-gray-900)
}

#reviewForm input[type="text"],#reviewForm textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  padding: .75rem .875rem;
  border: 1px solid rgb(75 85 99 / .3);
  background: #fff;
  color: var(--color-gray-900);
  border-radius: var(--radius-md);
  transition: border-color 0.2s ease,box-shadow 0.2s ease,background-color 0.2s ease,color 0.2s ease
}

#reviewForm input[type="text"]::-webkit-input-placeholder,#reviewForm textarea::-webkit-input-placeholder {
  color: var(--color-gray-400)
}

#reviewForm input[type="text"]::-moz-placeholder,#reviewForm textarea::-moz-placeholder {
  color: var(--color-gray-400)
}

#reviewForm input[type="text"]:-ms-input-placeholder,#reviewForm textarea:-ms-input-placeholder {
  color: var(--color-gray-400)
}

#reviewForm input[type="text"]::-ms-input-placeholder,#reviewForm textarea::-ms-input-placeholder {
  color: var(--color-gray-400)
}

#reviewForm input[type="text"]::placeholder,#reviewForm textarea::placeholder {
  color: var(--color-gray-400)
}

#reviewForm input[type="text"]:focus,#reviewForm textarea:focus {
  outline: none;
  border-color: var(--color-accent,#22c55e);
  box-shadow: 0 0 0 3px rgb(34 197 94 / .15)
}

#reviewForm .char-counter {
  display: flex;
  justify-content: flex-end;
  font-size: var(--text-base);
  color: var(--color-gray-500)
}

#reviewForm .rating-stars {
  display: inline-flex;
  gap: var(--space-1);
  line-height: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

#reviewForm .star {
  cursor: pointer;
  font-size: 1.625rem;
  color: var(--color-gray-300);
  transition: transform 0.1s ease,color 0.15s ease
}

#reviewForm .star:hover,#reviewForm .star:focus {
  color: #f59e0b;
  transform: scale(1.06)
}

#reviewForm .star:focus {
  outline: none;
  text-shadow: 0 0 .25rem rgb(245 158 11 / .35)
}

#reviewForm .star.selected,#reviewForm .star.active,#reviewForm .star[aria-pressed="true"] {
  color: #f59e0b
}

@media (pointer: coarse) {
  #reviewForm .star {
      font-size:var(--text-4xl)
  }
}

@media (prefers-color-scheme: dark) {
  #reviewForm label {
      color:var(--color-gray-200)
  }

  #reviewForm input[type="text"],#reviewForm textarea {
      background: var(--black-10);
      color: var(--color-gray-200);
      border-color: rgb(229 231 235 / .15)
  }

  #reviewForm input[type="text"]:focus,#reviewForm textarea:focus {
      box-shadow: 0 0 0 3px rgb(34 197 94 / .25)
  }

  #reviewForm .char-counter {
      color: var(--color-gray-400)
  }
}

.filters__sort-icon {
  flex: 0 0 .875rem;
  width: .875rem;
  height: 1.0625rem
}

.filters__toggle-icon {
  flex: 0 0 1.0625rem;
  width: 1.0625rem;
  height: 1rem
}

.filters__sort-btn,.filters__toggle-btn,.filters__tag,.filters__item,.categories__item {
  --filter-btn-height: 2.375rem;
  display: flex;
  align-items: center;
  height: var(--filter-btn-height);
  gap: var(--space-2-5);
  padding: .3125rem .9375rem;
  border: none;
  color: var(--black-100);
  background-color: var(--white-100);
  font-family: var(--font-family-quaternary);
  font-size: var(--text-base);
  border: 1px solid var(--color-button-hover);
  letter-spacing: -.03em;
  border-radius: var(--radius-xl);
  transition: color var(--transition-base),background-color var(--transition-base)
}

.categories__item {
  background-color: var(--color-background-gray);
  color: var(--color-text)
}

.categories__item-count {
  background: #000;
  color: #fff;
  padding: .3rem .5rem;
  border-radius: 2rem
}

.filters__tag {
  background-color: var(--color-accent);
  color: var(--white-100)
}

.filters__tag-remove {
  background: none;
  border: none;
  padding: .125rem
}

.filters__tag-remove-icon {
  width: 1rem;
  height: 1rem;
  transition: transform var(--transition-base)
}

.catalog__grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: var(--space-5);
  margin: 2.375rem 0 0
}

.catalog__empty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-11);
  padding: 3.5rem;
  margin: 3.75rem 0 3.75rem;
  border-radius: var(--radius-4xl);
  background: -o-radial-gradient(top left,circle,rgb(255 255 255 / .08),rgb(255 255 255 / .02));
  background: radial-gradient(circle at top left,rgb(255 255 255 / .08),rgb(255 255 255 / .02));
  border: .0625rem solid rgb(255 255 255 / .08);
  position: relative;
  overflow: hidden
}

.catalog__empty::before {
  content: "";
  position: absolute;
  inset: 0;
  background: -o-linear-gradient(315deg,rgb(255 255 255 / .08) 0%,#fff0 60%);
  background: linear-gradient(135deg,rgb(255 255 255 / .08) 0%,#fff0 60%);
  pointer-events: none
}

.catalog__empty-illustration {
  flex: 0 0 40%;
  display: flex;
  justify-content: center
}

.catalog__empty-illustration img {
  max-width: 100%;
  height: auto;
  -webkit-filter: drop-shadow(0 1rem 2rem rgb(0 0 0 / .35));
  filter: drop-shadow(0 1rem 2rem rgb(0 0 0 / .35));
  opacity: .9
}

.catalog__empty-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  position: relative;
  z-index: 1
}

.catalog__empty-title {
  font-family: var(--font-family-tertiary);
  font-size: var(--text-5xl);
  font-weight: 700;
  color: var(--white-100);
  margin: 0
}

.catalog__empty-hint {
  font-size: var(--text-lg);
  line-height: 1.5;
  color: rgb(255 255 255 / .7);
  margin: 0
}

.catalog__empty-button {
  -webkit-align-self: flex-start;
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .9rem 2.5rem;
  border-radius: var(--radius-pill);
  background: var(--color-accent);
  color: var(--white-100);
  font-weight: 600;
  letter-spacing: .02em;
  text-decoration: none;
  transition: transform 0.2s ease,box-shadow 0.2s ease
}

.catalog__empty-button:hover {
  transform: translateY(-.15rem);
  box-shadow: 0 .75rem 1.25rem rgb(99 102 241 / .35)
}

@media (max-width: 992px) {
  .catalog__empty {
      flex-direction:column;
      text-align: center;
      padding: 2.5rem
  }

  .catalog__empty-illustration {
      flex: initial;
      width: 100%
  }

  .catalog__empty-content {
      align-items: center
  }

  .catalog__empty-button {
      -webkit-align-self: center;
      -ms-grid-row-align: center;
      align-self: center
  }
}

.product-card {
  position: relative;
  background-color: var(--white-100);
  border-radius: var(--radius-3xl);
  padding: 1.5625rem 1.5625rem 2rem;
  color: var(--black-100);
  overflow: hidden
}

.product-card--angled-bg::after {
  content: "";
  position: absolute;
  top: -6rem;
  right: -12rem;
  width: 30rem;
  height: 28rem;
  background: radial-gradient(closest-side at 40% 40%,rgb(132 240 0 / .28) 0%,rgb(132 240 0 / .10) 35%,#fff0 70%);
  transform: rotate(-18deg);
  pointer-events: none;
  z-index: 0
}

.product-card--angled-bg>* {
  z-index: 1
}

.product-card__image-wrapper {
  position: relative;
  top: -1.25rem;
  left: 2rem;
  display: block;
  height: 19.5625rem;
  margin-bottom: 1.25rem
}

.product-card__image {
  width: 100%;
  height: 23.75rem;
  object-fit: contain
}

.product-card__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-2-5);
  margin: 1.25rem 0 0
}

.product-card__row--inline {
  flex-wrap: nowrap;
  align-items: center;
  gap: .5rem;
  margin: 1rem 0 0
}

.product-card__price-wrap {
  flex: 1 1 auto;
  min-width: 0
}

.product-card__price-wrap .product-card__price {
  display: flex;
  align-items: baseline;
  gap: .25rem
}

.product-card__price-wrap .product-card__price-value {
  font-size: .9rem;
  white-space: nowrap
}

.product-card__price-cart-btn--sm {
  flex-shrink: 0;
  width: 3rem!important;
  height: 100%;
  padding: 0!important
}

.product-card__kp-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0 1.625rem;
  height: 2.6rem;
  background: #fff0;
  border: 1px solid var(--color-primary,#0d6efd);
  border-radius: var(--radius-md);
  color: var(--color-primary,#0d6efd);
  font-size: .75rem;
  font-weight: 500;
  white-space: nowrap;
  cursor: pointer;
  transition: all var(--transition-base)
}

.product-card__kp-btn:hover {
  background: var(--color-primary,#0d6efd);
  color: #fff
}

.product-card__specs-preview {
  position: relative;
  margin: .75rem 0 0;
  max-height: 7.5rem;
  overflow: hidden
}

.product-card__specs-preview::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 8rem;
  background: linear-gradient(to bottom,transparent,var(--white-100,#fff));
  pointer-events: none
}

.product-card__spec-item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: .5rem;
  padding: .25rem 0;
  border-bottom: 1px solid var(--color-border,rgb(0 0 0 / .06))
}

.product-card__spec-item:last-child {
  border-bottom: none
}

.product-card__spec-name {
  font-size: .75rem;
  color: var(--color-text-muted,#888);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0
}

.product-card__spec-val {
  font-size: .75rem;
  font-weight: 500;
  white-space: nowrap;
  flex-shrink: 0;
  text-align: right
}

.product-card__hashrate,.product-card__price {
  display: inline-flex;
  justify-content: center;
  gap: var(--space-1);
  padding: .6875rem 1.5rem;
  border-radius: var(--radius-md);
  font-size: var(--text-base);
  font-weight: 700;
  font-family: var(--font-family-tertiary)
}

.product-card__hashrate {
  flex: 1 1;
  border: .0625rem solid rgb(0 0 0 / .5);
  color: rgb(0 0 0 / .4)
}

.product-card__price {
  background-color: var(--black-100);
  color: rgb(255 255 255 / .5)
}

.product-card__price-actions {
  width: 100%
}

.product-card__price-cart-btn {
  background: var(--color-accent);
  display: inline-flex;
  justify-content: center;
  gap: var(--space-1);
  padding: .475rem 1rem;
  border-radius: var(--radius-md);
  font-size: var(--text-base);
  font-weight: 700;
  font-family: var(--font-family-tertiary);
  transition: .5s
}

.product-card__price-cart-btn:hover {
  background: var(--color-accent-light)
}

.product-card__price-cart-btn:focus {
  background: var(--black-100);
  transform: scale(1.05)
}

.product-card__price-cart-btn.in-cart {
  background: var(--color-success,#28a745)
}

.product-card__price-cart-btn.in-cart:hover {
  background: var(--color-success-dark,#218838)
}

.product-card__price-cart-btn.in-cart svg {
  stroke: var(--white-100);
  fill: none
}

.product-card__price-value {
  color: var(--white-100)
}

.product-card__hashrate-value {
  color: var(--black-100);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content
}

.product-card__actions {
  position: absolute;
  top: 1.5625rem;
  left: 1.5625rem;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1.0625rem
}

.product-card__rating {
  display: inline-flex;
  gap: .4375rem;
  align-items: center;
  font-family: var(--font-family-secondary);
  font-size: var(--text-base);
  font-weight: 600
}

.product-card__controls {
  display: flex;
  flex-direction: column;
  gap: var(--space-2)
}

.product-card__rating span {
  position: relative;
  top: .0625rem
}

.product-card__compare,.product-card__wishlist {
  width: 40px;
  height: 40px;
  border: none;
  border-radius: var(--radius-md);
  background: rgb(0 0 0 / .05);
  color: #666;
  cursor: pointer;
  transition: all var(--transition-base);
  display: flex;
  align-items: center;
  justify-content: center
}

.product-card__compare:hover,.product-card__wishlist:hover {
  background: rgb(0 0 0 / .1);
  color: #333
}

.product-card__compare:not(.active) .product-card__compare-icon--active,.product-card__compare.active .product-card__compare-icon--inactive {
  display: none
}

.product-card__wishlist:not(.active) .product-card__wishlist-icon--active,.product-card__wishlist.active .product-card__wishlist-icon--inactive {
  display: none
}

.product-card__compare.active {
  background: var(--color-accent);
  color: #fff
}

.product-card__wishlist.active {
  background: var(--color-accent);
  color: #fff
}

.product-card__compare.active:hover {
  background: var(--color-blue-500)
}

.product-card__rating-icon {
  flex: 0 0 1.375rem;
  width: 1.375rem;
  height: 1.25rem
}

.product-card__compare-icon {
  flex: 0 0 1.125rem;
  width: 1.125rem;
  height: 1.125rem
}

.product-card__wishlist-icon {
  position: relative;
  top: .0625rem;
  flex: 0 0 1.3125rem;
  width: 1.3125rem;
  height: 1.1875rem
}

.product-card__specs {
  display: flex;
  justify-content: space-between;
  gap: var(--space-1-5);
  margin: 1.75rem 0 0;
  max-width: 100%
}

.product-card__spec {
  display: flex;
  flex-direction: column;
  gap: .1875rem
}

.product-card__spec-label {
  font-family: var(--font-family-quaternary);
  color: rgb(0 0 0 / .4);
  font-weight: 600
}

.product-card__spec-value {
  margin: .375rem 0 0;
  font-family: var(--font-family-secondary);
  font-weight: 600
}

.product-card__coins {
  display: flex;
  align-items: center;
  gap: var(--space-2-5);
  margin: .375rem 0 0
}

.product-card__coin {
  font-weight: 600
}

.product-card__coin-icon+.product-card__coin {
  margin-left: .25rem
}

.product-card__coin-icon {
  --coins-size: 1.2625rem;
  flex: 0 0 var(--coins-size);
  width: var(--coins-size);
  height: var(--coins-size);
  background: #000;
  border-radius: 2rem
}

.product-card__content {
  padding: 0 .75rem
}

.product-card__name {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  font-family: var(--font-family-secondary);
  transition: color var(--transition-base)
}

.product-card__brand {
  font-size: var(--text-base);
  font-weight: 600
}

.product-card__model {
  font-size: var(--text-2xl);
  font-weight: 600;
  margin: .5rem 0 0
}

.product-card__description {
  font-size: var(--text-base);
  margin: .875rem 0 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden
}

.electricity-price-input {
  color: #fff;
  font-size: .8rem;
  font-weight: 600;
  text-align: center
}

.electricity-price-input-wrapper {
  position: relative
}

.usd-rate-input {
  font-size: .8rem;
  font-weight: 600
}

.number-control__input.usd-rate-input {
  max-width: 3rem
}

.usd-rate-input-wrapper {
  position: relative
}

.electricity-price-input-wrapper,.usd-rate-input-wrapper {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  background: rgb(0 0 0 / 60%);
  border: 1px solid rgb(255 255 255 / .15);
  border-radius: var(--radius-md);
  padding: .1rem .5rem;
  height: 100%;
  width: 9rem;
  position: relative
}

.settings-hint__btn {
  position: absolute;
  top: -.6rem;
  right: -.5rem;
  background: rgb(0 0 0 / 60%);
  border: 1px solid rgb(255 255 255 / .15);
  border-radius: var(--radius-md);
  color: #fff;
  width: 1.3rem;
  height: 1.3rem;
  font-size: .7rem
}

.settings-toggle-btn {
  display: none;
  background: rgb(0 0 0 / 60%);
  border: 1px solid rgb(255 255 255 / .15);
  border-radius: var(--radius-md);
  padding: .5rem;
  cursor: pointer;
  color: #fff;
  transition: all var(--transition-base);
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px
}

.settings-toggle-btn:hover {
  background: rgb(0 0 0 / 80%);
  transform: rotate(90deg)
}

.settings-toggle-btn.active {
  background: rgb(0 123 255 / 60%)
}

.settings-inputs-container {
  display: flex;
  align-items: center;
  gap: var(--space-2)
}

@media (max-width: 768px) {
  .settings-toggle-btn {
      display:flex;
      position: relative;
      height: 2.375rem
  }

  .nav_botmenu {
      flex-wrap: nowrap
  }

  .settings-inputs-container {
      display: none;
      position: fixed;
      bottom: calc(.5rem + 60px);
      right: 0;
      width: auto;
      max-width: 400px;
      background: rgb(0 0 0 / 95%);
      border: 1px solid rgb(255 255 255 / .15);
      border-radius: var(--radius-md);
      padding: 1rem;
      flex-direction: column;
      gap: var(--space-3);
      z-index: 100000000;
      box-shadow: 0 4px 20px rgb(0 0 0 / .5)
  }

  .settings-inputs-container.show {
      display: flex
  }

  .electricity-price-input-wrapper,.usd-rate-input-wrapper {
      width: 100%;
      justify-content: space-between
  }
}

.number-control {
  display: flex;
  align-items: center;
  gap: .2rem;
  width: 100%;
  position: relative
}

.number-control__btn {
  width: 1.5rem;
  height: 1.5rem;
  border: none;
  border-radius: 6px;
  background: rgb(255 255 255 / .12);
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  transition: background 0.15s ease
}

.number-control__btn.minus {
  margin-left: .2rem
}

.number-control__btn:hover {
  background: rgb(255 255 255 / .2)
}

.number-control__input {
  background: #fff0;
  border: none;
  outline: none;
  color: #fff;
  max-width: 2rem;
  padding-left: .4rem;
  text-align: center
}

.electricity-price-unit,.usd-rate-unit {
  opacity: .8;
  color: rgb(187 187 187 / 80%);
  font-size: .7rem;
  font-weight: 500;
  white-space: nowrap;
  top: calc(50% - .4rem);
  right: 2.5rem
}

.profit-currency-switch {
  display: inline-flex;
  align-items: stretch;
  overflow: hidden;
  height: 100%;
  background: rgb(0 0 0 / 60%);
  border: 1px solid rgb(255 255 255 / .15);
  border-radius: var(--radius-md);
  position: relative
}

.profit-currency-switch__btn {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  border: none;
  margin: 0;
  cursor: pointer;
  color: rgb(255 255 255 / .65);
  background: #fff0;
  transition: background .15s ease,color .15s ease
}

.profit-currency-switch__btn:hover {
  color: rgb(255 255 255 / .95);
  background: rgb(255 255 255 / .06)
}

.profit-currency-switch__btn.is-active {
  color: #fff;
  background: linear-gradient(180deg,rgb(0 123 255 / .55),rgb(0 86 179 / .45))
}

.profit-currency-switch__flag {
  font-size: .7rem;
  line-height: 1;
  letter-spacing: .1rem;
  padding: 0 .4rem;
  margin: 0
}

.profit-currency-switch__flag svg {
  height: 1.5rem;
  width: 1.5rem
}

.profit-currency-switch__label {
  line-height: 1;
  display: none
}

@media (max-width: 768px) {
  .profit-currency-switch {
      align-self:stretch;
      justify-content: center
  }

  .profit-currency-switch__btn {
      flex: 1;
      justify-content: center;
      padding: .5rem .6rem
  }
}

.product-card__price--inactive {
  opacity: .7;
  cursor: help
}

.product-card__price-value--strikethrough {
  text-decoration: line-through;
  position: relative
}

.product-card__price-value--strikethrough::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--white-100);
  transform: translateY(-50%)
}

.toast-container {
  position: fixed;
  inset-inline: 0;
  bottom: 1.5rem;
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
  padding: 0 1rem 1.5rem;
  pointer-events: none;
  z-index: 99999
}

.toast {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: .625rem;
  margin-top: .5rem;
  cursor: default;
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.25s ease-out,transform 0.25s ease-out;
  overflow: hidden
}

.toast.show {
  opacity: 1;
  transform: translateY(0)
}

.toast.hide {
  opacity: 0;
  transform: translateY(24px)
}

.toast-inner {
  display: flex;
  align-items: flex-start;
  gap: .625rem;
  width: 100%
}

.toast-icon {
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .9rem
}

.toast-title {
  margin: 0;
  font-weight: 500;
  font-size: .9rem;
  line-height: 1.3;
  letter-spacing: -.02em;
  color: #e5e7eb
}

.toast-body {
  margin-top: .125rem;
  font-size: .8125rem;
  line-height: 1.4;
  color: #9ca3af
}

.toast-close {
  position: absolute;
  top: .5rem;
  right: .5rem;
  width: 1.25rem;
  height: 1.25rem;
  border: none;
  background: #fff0;
  border-radius: 999px;
  color: #9ca3af;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.16s ease-out,color 0.16s ease-out,transform 0.12s ease-out
}

.toast-close:hover {
  background-color: rgb(148 163 184 / .16);
  color: #e5e7eb;
  transform: scale(1.02)
}

.toast-progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  border-radius: 999px;
  opacity: .9;
  transition: width linear
}

.toast.toast-success {
  --toast-accent-color: #22c55e
}

.toast.toast-error {
  --toast-accent-color: #ef4444
}

.toast.toast-warning {
  --toast-accent-color: #f59e0b
}

.toast.toast-info {
  --toast-accent-color: #3b82f6
}

.toast-system-active .alert-dismissible {
  display: none!important
}

.product-card__wishlist.active:hover {
  background-color: #e94141!important;
  color: aliceblue
}

.product-card__compare.processing,.product-card__wishlist.processing {
  opacity: .6;
  pointer-events: none;
  background-color: #999!important;
  cursor: not-allowed
}

.product-card__compare.processing:hover,.product-card__wishlist.processing:hover {
  background-color: #999!important
}

.model-selection-modal {
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #fff0;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all var(--transition-base)
}

.model-selection-modal.modal-show {
  background-color: rgb(0 0 0 / .6);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  opacity: 1
}

.model-selection-modal.modal-show .modal-content {
  transform: scale(1);
  opacity: 1
}

.model-selection-modal.modal-hide {
  background-color: #fff0;
  opacity: 0
}

.model-selection-modal.modal-hide .modal-content {
  transform: scale(.9);
  opacity: 0
}

.modal-content {
  padding: 0;
  width: 90%;
  max-width: 600px;
  max-height: 80vh;
  overflow: hidden;
  transform: scale(.5);
  opacity: 0;
  transition: all var(--transition-base);
  background: var(--glass-bg);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border)
}

.modal-header {
  padding: .4rem 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.modal-header h2 {
  margin: 0;
  color: var(--color-card-background-light);
  font-size: 1.2rem;
  font-weight: 600;
  padding: .4rem 1rem;
  border-radius: 6px
}

.modal-close {
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  cursor: pointer;
  line-height: 1;
  transition: color 0.2s ease;
  border-radius: var(--radius-full);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center
}

.modal-close:hover {
  color: #dc3545;
  background-color: rgb(220 53 69 / .1)
}

.modal-body {
  padding: 15px;
  max-height: 469px;
  overflow-y: auto;
  min-height: 130px
}

.loading-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center
}

.loading-spinner {
  margin-bottom: 20px
}

.spinner {
  width: 48px;
  height: 48px;
  border: 4px solid #f3f3f3;
  border-top: 4px solid #007bff;
  border-radius: var(--radius-full);
  animation: spin 1s linear infinite
}

@keyframes spin {
  0% {
      transform: rotate(0deg)
  }

  100% {
      transform: rotate(360deg)
  }
}

.loading-text {
  color: var(--color-card-background-light);
  font-size: 16px;
  font-weight: 500
}

.error-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  text-align: center
}

.error-icon {
  font-size: 48px;
  margin-bottom: 16px
}

.error-text {
  color: #dc3545;
  font-size: 16px;
  font-weight: 500
}

.models-list {
  display: flex;
  gap: var(--space-4);
  flex-direction: column;
  padding-bottom: 3rem
}

.view-product-btn {
  display: flex;
  padding: .6rem 1rem;
  justify-content: center;
  align-items: center;
  background: var(--color-accent);
  margin-bottom: 1rem;
  border-radius: var(--radius-2xl);
  position: absolute;
  z-index: 1;
  font-size: .9rem;
  bottom: 0;
  transition: .2s
}

.view-product-btn:hover {
  background: #000
}

.model-visit {
  background: #fff0
}

.models-list.models-loaded .model-item {
  animation: slideInUp2 .4s ease forwards
}

@keyframes slideInUp2 {
  from {
      opacity: 0;
      transform: translateY(20px)
  }

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

.model-item {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  gap: var(--space-2);
  padding: .5rem .5rem;
  align-items: center;
  position: relative;
  opacity: 0;
  background: rgb(0 0 0 / 30%);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-card);
  backdrop-filter: grayscale(1);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: 2px solid;
  border-color: var(--black-10);
  transform: translateY(50px);
  transition: .2s
}

.model-item:hover {
  border-color: var(--swiper-scrollbar-drag-bg-color);
  transform: translateY(-2px)
}

.model-item.out-of-stock {
  background-color: #f8f9fa;
  border-color: #dee2e6
}

.model-item.out-of-stock:hover {
  border-color: #adb5bd;
  transform: none
}

.model-item.in-cart {
  background: var(--color-header-background)
}

.model-item.in-cart:hover {
  border-color: #20c997;
  box-shadow: 0 4px 12px rgb(40 167 69 / .2)
}

.model-image {
  width: 80px;
  height: 60px;
  object-fit: cover;
  border-radius: var(--radius-md);
  transition: transform 0.3s ease;
  display: none
}

.model-item:hover .model-image {
  -webkit-filter: unset;
  filter: unset
}

.model-info {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 0 .7rem
}

.model-name {
  font-weight: 600;
  color: var(--color-text-primary);
  font-size: 1.1rem;
  line-height: 1.4
}

.model-price {
  font-weight: 700;
  font-size: 1.1rem;
  background: var(--color-border-darker);
  padding: .2rem .5rem;
  border-radius: .4rem
}

.model-location {
  font-weight: 600;
  font-size: .8rem;
  margin-top: 2px;
  text-transform: uppercase;
  letter-spacing: .5px;
  font-style: italic
}

.model-delivery {
  position: absolute;
  top: -13px;
  right: 100px;
  padding: 5px 10px;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.5px;
  background: var(--color-card-background);
  border: 1px solid var(--color-border-dark)
}

.model-details {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  padding: .4rem 0
}

.price-subtype {
  display: inline-block;
  background: #e3f2fd;
  color: #1976d2;
  font-size: var(--text-xs);
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 4px;
  margin-left: 8px;
  border: 1px solid #bbdefb
}

.price-subtype-badge {
  color: #fff;
  font-size: .8rem;
  font-weight: 600;
  border: none;
  text-transform: uppercase;
  letter-spacing: .5px
}

.model-status {
  position: absolute;
  top: -13px;
  right: 12px;
  padding: 5px 10px;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .5px
}

.status-in-stock {
  background: var(--color-accent-green);
  color: var(--black-100);
  border: 1px solid var(--color-accent-light)
}

.status-out-of-stock {
  background: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb
}

.out-of-stock .model-price {
  text-decoration: line-through;
  color: #bdbdbd
}

.status-in-cart {
  background: #d1ecf1;
  color: #0c5460;
  border: 1px solid #bee5eb
}

.model-actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  align-items: flex-end
}

.model-actions-simple {
  display: flex;
  gap: var(--space-2);
  align-items: center;
  justify-content: flex-end
}

.add-to-cart-btn {
  background: -o-linear-gradient(315deg,#007bff 0%,#0056b3 100%);
  background: linear-gradient(135deg,#007bff 0%,#0056b3 100%);
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: var(--radius-md);
  cursor: pointer;
  font-weight: 600;
  font-size: var(--text-base);
  min-width: 90px;
  height: 40px;
  transition: all var(--transition-base);
  box-shadow: 0 2px 4px rgb(0 123 255 / .3)
}

.remove-from-cart-btn {
  background: #d02a3a;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: var(--radius-md);
  cursor: pointer;
  font-weight: 600;
  font-size: var(--text-base);
  min-width: 90px;
  height: 40px;
  transition: all var(--transition-base);
  box-shadow: 0 2px 4px rgb(220 53 69 / 30%)
}

.add-to-cart-btn:hover {
  background: -o-linear-gradient(315deg,#0056b3 0%,#004085 100%);
  background: linear-gradient(135deg,#0056b3 0%,#004085 100%);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgb(0 123 255 / .4)
}

.add-to-cart-btn:active {
  transform: translateY(0)
}

.callback-btn {
  background: -o-linear-gradient(315deg,#dc3545 0%,#c82333 100%);
  background: linear-gradient(135deg,#dc3545 0%,#c82333 100%);
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: var(--radius-md);
  cursor: pointer;
  font-weight: 600;
  font-size: var(--text-base);
  min-width: 140px;
  height: 40px;
  transition: all var(--transition-base);
  box-shadow: 0 2px 4px rgb(220 53 69 / .3)
}

.callback-btn:hover {
  background: -o-linear-gradient(315deg,#c82333 0%,#a71e2a 100%);
  background: linear-gradient(135deg,#c82333 0%,#a71e2a 100%);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgb(220 53 69 / .4)
}

.added-status {
  background: -o-linear-gradient(315deg,#d4edda 0%,#c3e6cb 100%);
  background: linear-gradient(135deg,#d4edda 0%,#c3e6cb 100%);
  color: #155724;
  padding: 10px 20px;
  border-radius: var(--radius-md);
  font-weight: 600;
  font-size: var(--text-base);
  min-width: 90px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #28a745;
  box-shadow: 0 2px 4px rgb(40 167 69 / .2)
}

.modal-body::-webkit-scrollbar {
  width: 8px
}

.modal-body::-webkit-scrollbar-track {
  background: rgb(255 255 255 / 9%);
  border-radius: 4px
}

.modal-body::-webkit-scrollbar-thumb {
  background: linear-gradient(135deg,#ffffff 0%,#bfbfbf 100%);
  border-radius: 4px;
  transition: background 0.3s ease
}

.modal-body::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(135deg,#764ba2 0%,#667eea 100%)
}

.pagination-wrapper {
  display: flex;
  justify-content: center;
  margin: 2rem 0;
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif
}

.pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row-reverse;
  gap: var(--space-4)
}

.pagination-info {
  padding: 1rem 0
}

.pagination-list {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
  background: rgb(255 255 255 / .9);
  -webkit-backdrop-filter: var(--glass-blur);
  backdrop-filter: var(--glass-blur);
  border-radius: var(--radius-2xl);
  padding: .75rem;
  box-shadow: 0 4px 20px rgb(0 0 0 / .1),0 1px 3px rgb(0 0 0 / .05);
  border: 1px solid rgb(255 255 255 / .2)
}

.pagination-item {
  display: flex;
  align-items: center
}

.pagination-link {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: .75rem 1rem;
  text-decoration: none;
  color: var(--color-gray-700);
  font-weight: 500;
  font-size: var(--text-base);
  border-radius: var(--radius-xl);
  transition: all 0.2s cubic-bezier(.4,0,.2,1);
  position: relative;
  overflow: hidden;
  min-width: 44px;
  justify-content: center;
  background: #fff0;
  border: 1px solid #fff0
}

.pagination-link:hover {
  background: -o-linear-gradient(315deg,#667eea 0%,#764ba2 100%);
  background: linear-gradient(135deg,#667eea 0%,#764ba2 100%);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgb(102 126 234 / .3),0 3px 10px rgb(102 126 234 / .2);
  border-color: rgb(255 255 255 / .2)
}

.pagination-link:active {
  transform: translateY(0);
  box-shadow: 0 4px 15px rgb(102 126 234 / .2),0 2px 5px rgb(102 126 234 / .1)
}

.pagination-active {
  color: #fff;
  font-weight: 600
}

.pagination-active:hover {
  background: -o-linear-gradient(315deg,#4338ca 0%,#6d28d9 100%);
  background: linear-gradient(135deg,#4338ca 0%,#6d28d9 100%);
  transform: translateY(-1px)
}

.pagination-icon {
  width: 16px;
  height: 16px;
  transition: transform 0.2s ease
}

.pagination-link:hover .pagination-icon {
  transform: scale(1.1)
}

.pagination-first .pagination-link,.pagination-last .pagination-link,.pagination-prev .pagination-link,.pagination-next .pagination-link {
  padding: .75rem 1.25rem;
  font-weight: 600
}

.pagination-first .pagination-link:hover,.pagination-last .pagination-link:hover,.pagination-prev .pagination-link:hover,.pagination-next .pagination-link:hover {
  background: var(--color-background-light)
}

.pagination-ellipsis {
  padding: 0 .5rem;
  color: var(--color-gray-400);
  font-weight: 500;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

.pagination-dots {
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: .1em
}

.pagination-text {
  font-size: var(--text-base);
  font-weight: 500;
  display: none
}

@keyframes fadeInUp {
  from {
      opacity: 0;
      transform: translateY(20px)
  }

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

.pagination-wrapper {
  animation: fadeInUp 0.5s ease-out
}

.seo-text {
  background: #fff;
  color: #000;
  padding: 2rem;
  border-radius: var(--radius-2xl)
}

.seo-text>*:first-child {
  margin-top: 0
}

.seo-text>*:last-child {
  margin-bottom: 0
}

.seo-text .table-wrap {
  overflow-x: auto;
  padding-bottom: .6rem;
  margin-bottom: 1.4rem
}

.seo-text table {
  max-width: 100dvw;
  position: relative;
  display: block;
  overflow: auto
}

.seo-text thead {
  background: #f2f2f2;
  line-height: 40px;
  letter-spacing: 2px
}

.seo-text tbody {
  background: #f7f7f7;
  border-top: 3px solid #e9e9e9
}

.seo-text tbody td {
  padding: 1rem;
  border-bottom: 1px solid #e9e9e9
}

.seo-text thead td {
  padding: .6rem 1rem;
  line-height: 1.4;
  font-weight: 500
}

.seo-text ul {
  margin: 1rem 2rem;
  display: flex;
  flex-direction: column;
  gap: var(--space-4)
}

.seo-text img {
  float: left;
  object-fit: contain;
  width: 360px;
  max-width: 100%;
  height: auto;
  margin: 0 8px 9px 0
}

.seo-text>p:first-of-type+* {
  clear: both
}

.product {
  position: relative;
  --product-grid-gap: var(--space-5);
  --product-card-border-radius: var(--radius-5xl);
  display: grid
}

.product::before {
  position: absolute;
  top: -32.75rem;
  left: -42.25rem;
  z-index: -1;
  content: "";
  width: 47rem;
  height: 131.5rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  transform: rotate(32deg);
  pointer-events: none
}

.product::after {
  content: "";
  position: absolute;
  top: -20.3125rem;
  right: -50.875rem;
  z-index: -1;
  width: 83rem;
  height: 83rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  pointer-events: none
}

.product__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 3rem
}

.product__actions {
  display: flex;
  align-items: center;
  gap: 1.1875rem
}

.product__head .breadcrumbs {
  margin-bottom: 0
}

.product__head-rating {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-base);
  line-height: 1;
  letter-spacing: -.02em;
  text-align: center
}

.product__head-rating span {
  position: relative;
  top: .125rem
}

.product__head-rating-icon {
  --icon-size: 1.375rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.product__action-compare-icon {
  --icon-size: 1.125rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.product__action-whish-icon {
  flex: 0 0 1.375rem;
  width: 1.375rem;
  height: 1.125rem
}

.product-info__image-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 32.125rem;
  width: 32.125rem;
  max-height: 24.25rem;
  margin: 0rem .75rem 0
}

.product-info__image {
  width: 100%;
  background: #fff;
  max-width: 100%;
  border-radius: var(--radius-2xl);
  max-height: 100%;
  object-fit: contain;
  transition: transform var(--transition-base)
}

.product-info__image-wrapper:hover .product-info__image {
  transform: scale(1.05)
}

.product-info {
  display: flex;
  flex: 1 1;
  gap: 4rem;
  justify-content: space-between;
  border-radius: var(--radius-md);
  color: var(--color-text-primary);
  padding: 1.5rem 0 0;
  font-family: var(--font-family-secondary)
}

.product-info__col--right {
  flex: 0 1 28.4375rem
}

.product-info__title {
  margin: 0;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: 2.25rem;
  line-height: 1.5;
  letter-spacing: -.02em
}

.product-info__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: .6875rem 1.5rem;
  margin: 0 0 1.0625rem;
  background: var(--color-accent);
  color: var(--color-text-primary);
  font-family: var(--font-family-tertiary);
  font-weight: 700;
  font-size: .9375rem;
  line-height: 1;
  border-radius: var(--radius-md)
}

.product-info__badge.in-cart {
  position: absolute;
  top: 1rem;
  right: 1.5625rem;
  font-size: .8rem;
  background: no-repeat;
  color: #000;
  padding-right: 0;
  left: auto
}

.product-card__profit-strip {
  position: absolute;
  top: 3.5625rem;
  right: 1.5625rem;
  font-family: var(--font-family-tertiary);
  font-weight: 700;
  font-size: .9rem;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center
}

.product-card__profit-strip-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: .4rem
}

.product-info__badge.nobuy.in-cart {
  color: var(--black-100);
  background: #fff0;
  border-radius: 0;
  padding: .6875rem 0 0 0
}

.product-info__badge.nobuy {
  background: var(--color-border-darker)
}

.product-info__hashrates {
  display: flex;
  flex-wrap: wrap;
  gap: 1.125rem .4375rem;
  margin: 1.25rem 0 0
}

.product-info__hashrate-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.5625rem;
  font-family: var(--font-family-tertiary);
  color: var(--color-text-primary);
  font-weight: 700;
  font-size: .9375rem;
  line-height: 1.3;
  position: relative;
  border-radius: var(--radius-md);
  padding: .6875rem 1.5rem;
  margin: 0;
  border: .0625rem solid rgb(255 255 255 / .5);
  background: #fff0;
  cursor: pointer;
  transition: opacity var(--transition-base);
  overflow: hidden
}

.product-info__hashrate-wrapper.active {
  background: var(--white-100);
  color: var(--black-100)
}

.product-info__hashrate-wrapper.disable {
  background: #fff0;
  color: rgb(255 255 255 / .5);
  border: .0625rem solid rgb(255 255 255 / .5)
}

a.product-info__hashrate-wrapper.active.disable {
  background: #838484;
  color: #000
}

.product-info__hashrate-wrapper.disable::after {
  content: '';
  position: absolute;
  width: 107%;
  height: 2px;
  background: #838484;
  transform: rotate(15deg)
}

.product-info__hashrate-wrapper input[type="radio"] {
  display: none
}

.product-info__hashrate-wrapper input[type="radio"]:checked+label {
  background: var(--white-100);
  color: var(--black-100)
}

.product-info__hashrate-wrapper input[type="radio"]:not(:checked)+label {
  background: #fff0;
  color: rgb(255 255 255 / .5);
  border: .0625rem solid rgb(255 255 255 / .5)
}

.product-info__specs {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  grid-template-columns: repeat(3,-webkit-min-content);
  grid-template-columns: repeat(3);
  gap: var(--space-2-5);
  justify-content: space-between;
  margin: 1.8875rem 0 0
}

.product-info__spec {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .1875rem;
  padding: .25rem 0;
  border-radius: 1.8125rem
}

.product-info__spec-label {
  color: #a4a4a4;
  font-family: var(--font-family-quinary);
  font-weight: 600;
  font-size: var(--text-md);
  line-height: 1.5;
  letter-spacing: -.02em
}

.product-info__spec-value {
  color: var(--color-text-primary);
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-md);
  line-height: 1.5;
  letter-spacing: -.02em
}

.product-info__spec-value--coin {
  display: flex;
  align-items: center;
  gap: var(--space-2-5)
}

.product-info__coin-icon {
  --coin-size: 1.0625rem;
  display: inline-flex;
  flex: 0 0 var(--coin-size);
  width: var(--coin-size);
  height: var(--coin-size)
}

.product-purchase {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 3.9375rem 0 0;
  color: var(--color-text-primary)
}

.product-purchase.cont {
  display: grid;
  gap: .5rem;
  padding: 1.875rem 2.5rem;
  background: var(--color-card-background);
  border-radius: var(--product-card-border-radius);
  color: var(--color-text-primary);
  position: relative
}

.product-info__image-cont {
  background: none;
  position: absolute;
  width: 36rem;
  right: 0;
  top: -6rem;
  z-index: -1
}

.product-info__image-cont img {
  background: none
}

.product-info-cont {
  display: flex;
  gap: 4rem;
  flex-direction: column;
  justify-content: space-between;
  border-radius: var(--radius-md);
  color: var(--color-text-primary);
  padding: 1.5rem 0 0;
  font-family: var(--font-family-secondary);
  max-width: 60rem
}

.product-purchase.cont .product-purchase__price-row {
  align-items: baseline
}

.price-format.nobuy {
  font-size: 1.4rem;
  margin-left: .5rem;
  text-decoration: line-through;
  color: #525252
}

.product-purchase__price-row {
  display: flex;
  align-items: end;
  gap: var(--space-4);
  justify-content: space-between;
  margin-bottom: 1rem;
  flex-direction: column
}

.product-purchase__price {
  font-family: var(--font-family-secondary);
  font-size: var(--text-4xl);
  font-weight: 600;
  letter-spacing: -.02em
}

.product-purchase__profit {
  display: flex;
  align-items: center;
  flex: 1 1;
  padding: 0;
  margin-left: 0;
  border: none;
  border-radius: 0;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: var(--text-xs);
  line-height: 130%;
  letter-spacing: -.03em;
  color: var(--color-text-primary);
  background: transparent;
  width: 100%
}

.product-purchase__profit-block {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  width: 100%;
  margin-left: 0;
  padding: .5625rem .6875rem .625rem;
  border: .0625rem solid rgb(255 255 255 / .06);
  border-radius: 1rem;
  background: var(--color-card-background)
}

.product-purchase__profit-label {
  font-size: var(--text-xs);
  line-height: 130%;
  letter-spacing: -.03em;
  white-space: nowrap
}

.product-purchase__profit-value {
  font-size: var(--text-xs);
  font-weight: 700;
  margin: 0 0 0 .25rem;
  white-space: nowrap
}

.product-purchase__profit-bar-wrapper {
  --indicator-width: 0.1875rem;
  position: relative;
  top: .0625rem;
  flex: 1 1 6.25rem;
  height: .3125rem;
  margin: 0 0 0 .625rem
}

.product-purchase__profit-bar {
  position: absolute;
  inset: 0;
  background: -o-linear-gradient(left,#db0000 0%,#e6ee00 48.56%,#a6ff00 100%);
  background: -webkit-gradient(linear,left top,right top,from(#db0000),color-stop(48.56%,#e6ee00),to(#a6ff00));
  background: linear-gradient(90deg,#db0000 0%,#e6ee00 48.56%,#a6ff00 100%);
  border-radius: 1.125rem
}

.product-purchase__indicator-wrapper {
  position: absolute;
  inset: 0;
  width: calc(100% - var(--indicator-width));
  height: 100%
}

.product-purchase__profit-indicator {
  position: absolute;
  top: -.1875rem;
  bottom: -.1875rem;
  left: 0;
  width: var(--indicator-width);
  height: .6875rem;
  border-radius: var(--radius-3xl);
  background: var(--white-100)
}

.product-purchase__seo-links {
  display: flex;
  flex-direction: column;
  gap: .375rem;
  width: 100%;
  margin: 0;
  padding: 0;
  border: none
}

.product-purchase__seo-links--solo {
  margin-top: .35rem
}

.product-purchase__seo-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  min-width: 0;
  width: 100%;
  padding: .5rem .6875rem;
  border: .0625rem solid rgb(255 255 255 / .1);
  border-radius: .75rem;
  background: rgb(255 255 255 / .04);
  color: rgb(255 255 255 / .88);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.02em;
  text-decoration: none;
  transition: color .15s ease, border-color .15s ease, background-color .15s ease
}

.product-purchase__seo-link span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.product-purchase__seo-link svg {
  flex: 0 0 auto;
  opacity: .7
}

.product-purchase__seo-link:hover {
  color: #fff;
  border-color: var(--color-accent, #4da3ff);
  background: rgb(77 163 255 / .12);
  text-decoration: none
}

.product-purchase__seo-link:hover svg {
  opacity: 1;
  color: var(--color-accent, #4da3ff)
}

.product-purchase__installment {
  background: #070809;
  border-radius: var(--radius-xl);
  border: .0625rem solid #454546;
  padding: 1.85rem 1.9375rem;
  margin-top: .25rem
}

.product-purchase__installment-title {
  margin: .5625rem 0 0;
  font-family: var(--font-family);
  font-size: var(--text-base);
  line-height: 130%;
  letter-spacing: -.03em;
  color: #575757
}

.product-purchase__installment-steps {
  display: flex;
  justify-content: space-between;
  margin-top: .5rem;
  gap: var(--space-2)
}

.product-purchase__installment-step {
  flex: 1 1;
  display: flex;
  flex-direction: column;
  gap: .1875rem;
  font-family: var(--font-family);
  font-size: var(--text-base);
  line-height: 130%;
  letter-spacing: -.03em;
  color: #575757
}

.product-purchase__installment-step::before {
  content: "";
  width: 100%;
  height: .4375rem;
  border-radius: 4.3125rem;
  background: #d9d9d9
}

.product-purchase__installment-step--active::before {
  background-color: var(--color-accent)
}

.product-purchase__installment-amount {
  color: var(--color-text-primary)
}

.product-purchase__installment-btn {
  --btn-height: 3.0625rem;
  width: 100%;
  font-weight: 700;
  font-size: var(--text-xs)
}

.product-purchase__manager-btn,.product-purchase__callback-btn {
  --btn-height: 3.5625rem;
  margin-top: .1875rem;
  gap: var(--space-2)
}

.product-purchase__manager-image-wrapper {
  position: relative;
  --img-size: 1.5rem;
  font-size: 0 0 var(--img-size);
  width: var(--img-size);
  height: var(--img-size);
  border-radius: var(--radius-full)
}

.product-purchase__manager-image {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--radius-full)
}

.product-purchase__manager-image-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: .4375rem;
  height: .4375rem;
  background: #84f000;
  border-radius: var(--radius-full);
  border: .0625rem solid var(--color-accent)
}

.product-purchase__callback-btn-icon {
  width: 1.5rem;
  height: 1.5rem;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1)
}

.product-card__price-manager-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: var(--color-accent);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-base)
}

.product-card__price-manager-btn:hover {
  background: #0056b3;
  transform: translateY(-2px)
}

.product-card__price-manager-icon {
  width: 1.25rem;
  height: 1.25rem;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1)
}

.product-card__price-callback-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: var(--color-accent);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-base)
}

.product-card__price-callback-btn:hover {
  background: #c82333;
  transform: translateY(-2px)
}

.product-card__price-callback-icon {
  width: 1.25rem;
  height: 1.25rem;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1)
}

.product-card__price-cart-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white-100);
  width: 100%;
  height: 2.5rem;
  background: var(--color-accent);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-base)
}

.product-card__price-cart-btn:hover {
  background: #218838;
  transform: translateY(-2px)
}

.product-card__price-cart-btn svg {
  width: 1.25rem;
  height: 1.25rem;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1)
}

.model-item {
  position: relative;
  cursor: default;
  pointer-events: none
}

.model-actions-simple {
  position: relative;
  z-index: 10;
  pointer-events: auto
}

.model-actions-simple button {
  position: relative;
  z-index: 11;
  cursor: pointer;
  pointer-events: auto
}

.model-item .model-actions-simple button:focus {
  outline: 2px solid var(--color-accent);
  outline-offset: 2px
}

.model-item .model-image,.model-item .model-info,.model-item .model-status {
  pointer-events: auto
}

.product__body {
  display: grid;
  gap: var(--product-grid-gap);
  grid-template-columns: 34.5625rem 1fr;
  min-width: 0;
  margin: 5rem 0rem 0
}

.product__body-right,.product__body-left {
  display: flex;
  flex-direction: column;
  gap: var(--product-grid-gap);
  min-width: 0;
  max-width: 100%;
  overflow: hidden
}

.product__footer {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: var(--product-grid-gap);
  margin-top: var(--product-grid-gap)
}

.product-gallery {
  --gallery-img-border-radius: 0.625rem;
  --swiper-slide-offset: 0.625rem;
  --gallery-img-size: 4.6875rem;
  position: relative;
  overflow: hidden;
  padding: 1.9375rem 2.5rem;
  border-radius: var(--product-card-border-radius);
  background: var(--color-card-background)
}

.product-gallery--middle {
  --gallery-img-border-radius: var(--radius-3xl);
  --gallery-img-size: 9.0625rem;
  --swiper-slide-offset: 1.25rem;
  padding: 0;
  border-radius: 0;
  background: #fff0
}

.product-gallery--middle .product-gallery__container {
  padding: 1.375rem;
  background: #070809;
  border-radius: var(--product-card-border-radius)
}

.product-gallery__slider {
  margin: 0 calc(var(--swiper-slide-offset) / -2)
}

.product-gallery__slide {
  width: calc(var(--gallery-img-size) + var(--swiper-slide-offset))!important;
  padding: 0 calc(var(--swiper-slide-offset) / 2)
}

.product-gallery__img-wrapper {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--gallery-img-size);
  height: var(--gallery-img-size);
  overflow: hidden;
  border-radius: var(--gallery-img-border-radius);
  cursor: pointer
}

.product-gallery__slider-wrapper {
  overflow: hidden
}

.product-gallery__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-base)
}

.product-gallery__img-wrapper:hover .product-gallery__img {
  transform: scale(1.1)
}

.product-gallery__nav-btn {
  position: absolute;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 100%;
  border-radius: var(--radius-lg);
  color: var(--color-text-primary);
  opacity: 0;
  transition: all var(--transition-base)
}

.product-gallery__nav-btn.swiper-button-lock,.product-gallery__nav-btn.swiper-button-disabled {
  visibility: hidden;
  opacity: 0
}

.product-gallery__nav-btn.swiper-button-disabled svg {
  opacity: .5
}

.product-gallery__nav-btn svg {
  width: 1.25rem;
  height: 2rem
}

.product-gallery__nav-btn--prev {
  padding-left: .125rem;
  left: 0;
  border-radius: var(--radius-lg) 0 0 .625rem
}

.product-gallery__nav-btn--next {
  padding-right: .125rem;
  right: 0;
  border-radius: 0 .625rem .625rem 0
}

.product-form__container {
  background: var(--color-card-background);
  border-radius: var(--product-card-border-radius);
  padding: 2.3125rem 2.3125rem 2.6875rem;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.product-form__manager {
  margin: 2.0625rem 0 0
}

.product-form__label {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-2xl);
  line-height: 1.5;
  letter-spacing: -.02em;
  color: var(--color-text-primary)
}

.product-guarantee {
  position: relative;
  flex: 1;
  padding: 1.625rem 1.75rem 2.5rem;
  border-radius: var(--product-card-border-radius);
  background: var(--color-card-background);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-height: -webkit-max-content;
  max-height: -moz-max-content;
  max-height: max-content
}

.product-guarantee::before {
  content: "";
  position: absolute;
  right: -25.4375rem;
  top: -6.125rem;
  width: 40.6875rem;
  height: 40.6875rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .5) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .5) 0%,#fff0 100%);
  z-index: 0;
  pointer-events: none
}

.product-guarantee::after {
  content: "";
  position: absolute;
  top: 6.4375rem;
  right: -1.875rem;
  z-index: 0;
  display: block;
  width: 23.4375rem;
  height: 29.125rem;
  background: url(/catalog/view/theme/default/image/shield.png) no-repeat center bottom / contain
}

.product-guarantee__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 2.6875rem
}

.product-guarantee__body {
  display: none
}

.product-guarantee__body.active {
  display: block
}

.product-guarantee__days {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-5xl);
  line-height: 1;
  letter-spacing: -.03em;
  color: var(--color-text-primary)
}

.product-guarantee__desc {
  font-family: var(--font-family-quinary);
  font-size: var(--text-base);
  line-height: 1.3;
  color: var(--color-text-primary);
  max-width: 20rem;
  margin: 1.875rem 0 0
}

.product-guarantee__types {
  display: inline-flex;
  align-items: center;
  -ms-grid-row-align: start;
  align-self: start;
  padding: .125rem;
  background: #3a3a3a;
  border-radius: var(--radius-lg)
}

.product-guarantee__type {
  font-family: var(--font-family-secondary);
  font-size: .6875rem;
  font-weight: 600;
  letter-spacing: -.04em;
  padding: .5rem 1.0625rem;
  border-radius: var(--radius-lg);
  border: none;
  background: #3a3a3a;
  color: var(--color-text-primary);
  cursor: pointer;
  transition: background-color var(--transition-base),color var(--transition-base)
}

.product-guarantee__type.active {
  background: var(--color-accent);
  color: var(--color-text-primary)
}

.product-guarantee__features {
  display: flex;
  gap: 2.0625rem;
  margin-top: var(--product-grid-gap)
}

.product-guarantee__feature {
  display: flex;
  align-items: center;
  gap: .8125rem;
  background: none
}

.product-guarantee__feature-icon {
  width: auto;
  height: 1.5rem
}

.product-guarantee__feature-icon--wrench {
  width: 1.25rem;
  height: 1.375rem
}

.product-guarantee__feature-icon--handshake {
  width: 1.875rem;
  height: 1.5rem
}

.product-guarantee__feature-text {
  font-family: var(--font-family-quinary);
  font-size: var(--text-base);
  color: var(--color-text-primary)
}

.delivery-block {
  overflow: hidden;
  flex: 1;
  position: relative;
  background: var(--color-card-background);
  border-radius: var(--product-card-border-radius);
  width: 100%;
  max-height: 9rem
}

.delivery-block__container {
  display: flex;
  padding: 2.5625rem 1.875rem 2.125rem
}

.delivery-block__text {
  position: relative;
  z-index: 1
}

.delivery-block__title {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-5xl);
  line-height: 100%;
  letter-spacing: -.03em;
  color: var(--color-text-primary)
}

.delivery-block__map {
  --map-size: 65.25rem 48.0625rem;
  --top-pos: -4.875rem;
  --right-pos: -18.0625rem;
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url(/catalog/view/theme/default/image/delivery-map.svg) no-repeat top var(--top-pos) right var(--right-pos) / var(--map-size)
}

.delivery-block__map::before {
  content: "";
  position: absolute;
  top: 2.625rem;
  left: 13.8125rem;
  z-index: 0;
  width: 48.8rem;
  height: 2.6875rem;
  background: url(/catalog/view/theme/default/image/delivery-map-line.svg) no-repeat center / contain
}

.product__middle {
  display: grid;
  gap: var(--space-10);
  padding: 1.875rem 2.5rem;
  margin: 5rem 0 0;
  background: var(--color-card-background);
  border-radius: var(--product-card-border-radius);
  color: var(--color-text-primary);
  position: relative
}

.product-tabs__nav {
  display: flex;
  gap: 0;
  border-bottom: 1px solid rgb(255 255 255 / .12);
  margin: 0 0 1.5rem;
  padding: 0
}

.product-tabs__tab {
  padding: .75rem 1.5rem;
  font-size: var(--text-base);
  font-weight: 500;
  color: rgb(255 255 255 / .6);
  background: #fff0;
  border: none;
  border-bottom: 2px solid #fff0;
  cursor: pointer;
  transition: color var(--transition-base),border-color var(--transition-base)
}

.product-tabs__tab:hover {
  color: rgb(255 255 255 / .9)
}

.product-tabs__tab--active {
  color: var(--color-accent,#fff);
  border-bottom-color: var(--color-accent,#fff)
}

.product-tabs__pane {
  display: none
}

.product-tabs__pane--active {
  display: block
}

.product-tabs__pane--active img {
  max-width: 100%
}

.product-tabs__pane[hidden] {
  display: none!important
}

.product-tabs__empty {
  margin: 0;
  color: rgb(255 255 255 / .6);
  font-size: var(--text-base)
}

.product-specs__group-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin: 1.5rem 0 .75rem
}

.product-specs__group-title:first-child {
  margin-top: 0
}

.product-specs__list {
  display: grid;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none
}

.product-specs__row {
  display: grid;
  grid-template-columns: 14rem 1fr;
  gap: 1rem;
  padding: .65rem 0;
  border-bottom: 1px solid rgb(255 255 255 / .1);
  align-items: start
}

.product-specs__row:last-child {
  border-bottom: none
}

.product-specs__name {
  margin: 0;
  font-weight: 500;
  color: rgb(255 255 255 / .72);
  line-height: 1.35;
  font-size: .95rem
}

.product-specs__name strong {
  font-weight: 700;
  color: var(--color-accent,#0d6efd)
}

.product-specs__value {
  margin: 0;
  color: var(--color-text-primary)
}

.product-specs__value strong {
  font-weight: 700
}

.product-specs__value p {
  margin: 0
}

.product-specs__value {
  line-height: 1.6;
  font-size: .95rem;
  word-break: break-word
}

.product-description__content dl {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0 0 2rem;
  padding: 0
}

.product-description__content dl>dt {
  margin: 0;
  padding: .75rem 0 .25rem;
  font-weight: 500;
  color: rgb(255 255 255 / .72);
  line-height: 1.35
}

.product-description__content dl>dt strong {
  font-weight: 800;
  color: #81aeff
}

.product-description__content dl>dd {
  margin: 0;
  padding: 0 0 .9rem;
  color: var(--color-text-primary);
  line-height: 1.6;
  word-break: break-word;
  border-bottom: 1px solid rgb(255 255 255 / .1)
}

.product-description__content dl>dd:last-of-type {
  border-bottom: none;
  padding-bottom: 0
}

@media (max-width: 767px) {
  .product-specs__row {
      grid-template-columns:1fr
  }
}

.product-description__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5.625rem
}

.product-description__row:not(:last-child) {
  margin-bottom: 2.5rem
}

.product-gallery__title,.product-description__title,.product-description h2 {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-5xl);
  line-height: 100%;
  letter-spacing: -.03em;
  margin: 0 0 1.5rem
}

.product-description h2 {
  font-size: var(--text-2xl)
}

.product-description__title {
  position: absolute;
  top: -3rem;
  font-size: var(--text-5xl)!important
}

.product-description h3 {
  font-size: 1.625rem;
  line-height: 100%;
  letter-spacing: -.03em;
  margin: 0 0 1.25rem
}

.product-description p,.product-description h4 {
  margin: 0 0 1.25rem
}

.product-description p:last-child {
  margin-bottom: 0
}

.product-description p,.product-description li,.product-description h4 {
  font-size: var(--text-base);
  line-height: 160%;
  letter-spacing: -.03em
}

.product-description ul,.product-description ol {
  margin: 0 0 1rem 1.5rem;
  padding: 0
}

.product-description li:not(:last-child) {
  margin: 0 0 .625rem
}

.product-description a {
  color: var(--color-accent);
  transition: color var(--transition-base)
}

.product-description a:hover {
  text-decoration: underline
}

.reviews {
  background: var(--color-card-background);
  border-radius: var(--product-card-border-radius);
  padding: 2rem 2.5rem 3.1875rem;
  color: var(--color-text-primary);
  margin: 0 auto;
  position: relative;
  width: 100%
}

.reviews__header {
  display: flex;
  align-items: center;
  margin-bottom: 1.3125rem
}

.reviews__title {
  font-weight: 600;
  font-size: 1.5625rem;
  line-height: 1.3;
  letter-spacing: -.03em;
  color: var(--color-text-primary);
  margin-right: 1rem
}

.reviews__count {
  font-weight: 600;
  font-size: 1.5625rem;
  line-height: 1.3;
  letter-spacing: -.03em;
  color: #575757
}

.reviews__card {
  display: grid;
  grid-template-columns: 1fr 21.375rem;
  gap: 2.375rem;
  position: relative
}

.reviews__user {
  display: flex;
  align-items: center;
  gap: var(--space-3-5)
}

.reviews__avatar {
  --avatar-size: 3.25rem;
  flex: 0 0 var(--avatar-size);
  width: var(--avatar-size);
  height: var(--avatar-size);
  border-radius: var(--radius-full);
  background: #fec600;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: var(--text-xl)
}

.reviews__info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: .8125rem 0 0
}

.reviews__name {
  font-weight: 600;
  font-size: var(--text-xl)
}

.reviews__user-info {
  display: flex;
  flex-direction: column;
  gap: .3125rem
}

.reviews__user-rating {
  display: flex;
  align-items: center;
  gap: .4375rem;
  font-size: var(--text-base);
  line-height: 130%;
  letter-spacing: -.03em;
  color: #aeaeae
}

.reviews__user-rating-icon {
  --icon-size: 0.875rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.reviews__text,.reviews__read-more {
  font-size: var(--text-base);
  line-height: 1.3;
  word-break: break-all
}

.reviews__read-more {
  display: inline-block;
  color: var(--color-accent)
}

.reviews__pros-cons {
  display: flex;
  flex-direction: column;
  gap: 1.3125rem;
  margin: 1.0625rem 0 0
}

.reviews__pros,.reviews__cons {
  flex: 1
}

.reviews__pros-title,.reviews__cons-title {
  font-weight: 700;
  font-size: var(--text-base);
  margin-bottom: .5625rem
}

.reviews__pros-text,.reviews__cons-text {
  font-size: var(--text-base)
}

.reviews__rating {
  padding: .9375rem 1.9375rem 2rem;
  margin-bottom: .5rem;
  border: .0625rem solid #eaecf2;
  border-radius: var(--radius-lg)
}

.reviews__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-2)
}

.reviews__rating-label {
  font-size: var(--text-base);
  color: #aeaeae
}

.reviews__rating-value {
  display: flex;
  align-items: center;
  gap: var(--space-5);
  font-weight: 600;
  font-size: 3.375rem;
  color: var(--color-text-primary);
  margin-right: .5rem
}

.reviews__rating-icon {
  --icon-size: 2.4375rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.reviews__rating-particular {
  display: grid;
  gap: var(--space-2);
  margin: 1.5rem 0 0
}

.reviews__rating-particular-value {
  line-height: 1
}

.reviews__rating-particular-item {
  display: flex;
  align-items: center;
  gap: .4375rem
}

.reviews__rating-particular-icon {
  --icon-size: 0.875rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.reviews__rating-particular-progressbar {
  overflow: hidden;
  position: relative;
  flex: 1 1;
  height: .375rem;
  background: #eaecf2;
  border-radius: var(--radius-4xl)
}

.reviews__rating-particular-progressbar-fill {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--color-accent)
}

.reviews__stars {
  display: flex;
  align-items: center;
  gap: var(--space-1)
}

.reviews__star {
  width: .875rem;
  height: .875rem;
  display: inline-block
}

.reviews__footer {
  display: flex;
  align-items: center;
  margin-top: 1.5rem;
  gap: var(--space-4)
}

.reviews__show-all {
  width: 100%
}

.expert-opinion {
  background: var(--color-card-background-light);
  border-radius: var(--product-card-border-radius);
  padding: 1rem;
  color: var(--color-text-primary);
  display: flex;
  flex-direction: column;
  gap: var(--space-7);
  justify-content: center;
  align-items: center
}

.expert-opinion__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--space-6)
}

.expert-opinion__title,.expert-opinion__subtitle {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-5xl);
  line-height: 100%;
  letter-spacing: -.03em
}

.expert-opinion__subtitle {
  margin: .625rem 0 0
}

.expert-opinion__stats {
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  align-items: flex-end;
  margin: .3125rem 0 0
}

.expert-opinion__stat {
  font-family: var(--font-family-quinary);
  font-weight: 400;
  font-size: var(--text-base);
  line-height: 130%;
  letter-spacing: -.03em;
  text-align: right
}

.expert-opinion__stat-value {
  font-weight: 700
}

.expert-opinion__stat-value--blue {
  color: var(--color-accent);
  font-weight: 600;
  margin-left: .25rem
}

.expert-opinion__text {
  margin: .9375rem 0 0;
  font-family: var(--font-family-quinary);
  font-size: var(--text-base);
  line-height: 130%;
  letter-spacing: -.03em
}

.expert-opinion__text>*:last-child {
  margin-bottom: 0
}

.expert-opinion__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 2.4375rem;
  gap: var(--space-6)
}

.expert-opinion__person {
  --expert-image-size: 4.25rem
}

.expert-opinion__button {
  --btn-height: 4.25rem;
  flex: 1;
  max-width: 21.375rem
}

.product-cards {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  gap: var(--product-grid-gap)
}

.product-item {
  display: flex;
  justify-content: space-between;
  gap: var(--space-5);
  padding: 2.1875rem;
  background: var(--color-card-background);
  border-radius: var(--product-card-border-radius);
  padding: 1.875rem 2.25rem;
  color: var(--color-text-primary);
  font-family: var(--font-family-quaternary);
  font-size: var(--text-md);
  line-height: 156%;
  letter-spacing: initial
}

.product-item__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 1.1875rem;
  padding: 0 .625rem .0625rem;
  font-size: var(--text-xs);
  line-height: 1.1875rem;
  letter-spacing: -.03em;
  color: var(--color-text-primary);
  border: .0625rem solid var(--color-text-primary);
  border-radius: 2.875rem
}

.product-item__name {
  margin: .5rem 0 0
}

.product-item__info-item {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  margin: .5rem 0 0
}

.product-item__info-item-title {
  color: rgb(255 255 255 / .5)
}

.product-item__info-item-value {
  font-weight: 700
}

.product-item__price,.product-item__price-new {
  font-weight: 500;
  font-size: var(--text-2xl);
  line-height: 104%;
  text-align: right;
  color: var(--color-accent)
}

.product-item__price-old {
  margin: .6875rem 0 0;
  font-weight: 500;
  font-size: 1.0625rem;
  line-height: 104%;
  text-decoration: line-through;
  text-align: right;
  color: #373e41
}

.product-item__card-btn {
  --btn-height: 2.8125rem;
  gap: var(--space-2-5);
  margin: 1.125rem 0 0;
  border-radius: var(--radius-3xl);
  padding: 0 1.5625rem;
  font-weight: 400;
  font-size: var(--text-base)
}

.product-item__card-cart-icon {
  --icon-size: 0.8125rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.button--accent {
  background: var(--color-accent);
  color: var(--color-text-primary)
}

.product-purchase__buy-btn-icon {
  width: 1.5rem
}

.button--accent.in-cart {
  background: #dc3545
}

.product-purchase__quick-order {
  margin-top: 1rem
}

.product-purchase__quick-order-header {
  position: absolute;
  top: 4rem;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: .775rem;
  justify-content: end;
  flex-direction: row-reverse;
  font-weight: 600;
  color: #434343
}

.product-purchase__quick-order-icon {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  position: relative;
  top: -5px
}

.product-purchase__quick-order-title {
  line-height: 1.2
}

.product-purchase__quick-order .form__row {
  flex-direction: row;
  align-items: stretch;
  gap: var(--space-2)
}

.product-purchase__quick-order .form__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--field-height)
}

.product-purchase__quick-order .form__submit svg {
  width: 1.25rem;
  height: 1.25rem
}

.breadcrumbs__item--current {
  color: #fff
}

.person-info {
  --expert-image-size: 5.3125rem;
  display: flex;
  align-items: center;
  gap: var(--space-5);
  font-family: var(--font-family-tertiary);
  color: var(--color-text-primary)
}

.person-info__photo {
  width: var(--expert-image-size);
  height: var(--expert-image-size);
  border-radius: var(--radius-full);
  object-fit: cover
}

.person-info__name {
  font-weight: 700
}

.person-info__desc {
  font-size: var(--text-xs);
  font-weight: 500
}

.select {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1
}

.form__input-group .select {
  position: static;
  height: 100%;
  padding: 0 .5rem 0 1.25rem
}

.select__current {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: var(--color-background);
  border-radius: var(--radius-lg);
  border: .0625rem solid var(--color-border);
  padding: .625rem 2.375rem .625rem .875rem;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: var(--text-base);
  line-height: 1.3;
  letter-spacing: -.03em;
  color: var(--color-text-primary);
  cursor: pointer;
  outline: none;
  transition: border-color 0.2s
}

.form__input-group .select__current {
  height: 100%;
  padding: 0
}

.select__icon {
  position: absolute;
  right: 1.125rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  display: flex;
  align-items: center;
  transition: transform var(--transition-base)
}

.select--open .select__icon {
  transform: translateY(-50%) rotate(180deg)
}

.select__icon svg {
  --icon-size: 1.5rem;
  width: var(--icon-size);
  height: var(--icon-size)
}

.select__list {
  position: absolute;
  z-index: 10;
  top: calc(100% + 0.25rem);
  left: 0;
  width: 100%;
  background: var(--color-background);
  border: .0625rem solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: 0 .25rem 1rem rgb(0 0 0 / .08);
  margin: 0;
  padding: .375rem 0;
  list-style: none;
  max-height: 13.75rem;
  overflow-y: auto
}

.select__option {
  padding: .625rem 1.125rem;
  font-size: var(--text-base);
  font-family: var(--font-family);
  color: var(--color-text-primary);
  cursor: pointer;
  transition: background 0.15s,color 0.15s
}

.select__option:hover,.select__option:focus,.select__option--focused {
  background: var(--color-accent-light);
  color: var(--color-text-primary)
}

.select__option--selected {
  background: var(--color-accent)!important;
  color: var(--color-text-primary)
}

.checkbox {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-family-quaternary);
  font-weight: 500;
  font-size: var(--text-md);
  color: var(--color-text-secondary);
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

.checkbox__input {
  position: absolute;
  z-index: -1;
  opacity: 0;
  width: 0;
  height: 0;
  color: #fff0
}

.checkbox__custom {
  --checkbox-size: 1.0625rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--checkbox-size);
  height: var(--checkbox-size)
}

.checkbox__custom::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--radius-xs);
  background: var(--white-100);
  border: .0625rem solid #667085
}

.checkbox__custom::after {
  --check-size: 0.75rem 0.5625rem;
  content: "";
  position: absolute;
  inset: 0;
  background: url(/catalog/view/theme/default/image/check.svg) no-repeat center center / var(--check-size);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-base),visibility var(--transition-base)
}

.checkbox__input:checked+.checkbox__custom::before {
  border-color: var(--color-accent)
}

.checkbox__input:checked+.checkbox__custom::after {
  opacity: 1;
  visibility: visible
}

.checkbox__input:focus-visible+.checkbox__custom::before {
  outline: .125rem solid var(--color-accent)
}

.checkbox__label {
  font-size: var(--text-md);
  color: var(--color-text-secondary)
}

.form {
  --field-height: 3.0625rem;
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  margin: 2rem 0 0
}

.byoneclick-form {
  margin: 1rem 0 0;
  position: relative
}

.byoneclick-form .smart-captcha {
  position: relative;
  top: 1.6rem
}

.form__row {
  display: flex;
  flex-direction: column;
  gap: var(--space-2-5)
}

.form__input-group {
  position: relative;
  display: flex;
  align-items: center;
  height: var(--field-height);
  background: var(--white-10);
  border-radius: var(--radius-lg);
  border: .0625rem solid var(--color-border)
}

.form__input-label {
  display: flex;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0 0 0 .5rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border: none;
  background: #fff0;
  cursor: pointer
}

.form__input-label-text {
  --label-height: 1.8125rem;
  height: var(--label-height);
  padding: 0 .625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-family);
  font-weight: 600;
  font-size: var(--text-xs);
  line-height: var(--label-height);
  letter-spacing: -.03em;
  color: var(--color-text-primary);
  background: var(--color-background);
  border-radius: var(--radius-lg)
}

.form__input {
  flex: 1 1;
  padding: 0 .5rem 0 1.25rem;
  height: 100%;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: var(--text-base);
  line-height: 1.3;
  letter-spacing: -.03em;
  color: var(--color-text-primary);
  outline: none;
  transition: border-color 0.2s
}

.form__input:focus {
  border-color: var(--color-accent)
}

.form__select .select__current {
  background: #fff0;
  border: none
}

.form__select .select__icon {
  right: .375rem
}

.form__select-icon {
  position: absolute;
  right: .625rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  display: flex;
  align-items: center
}

.form__row--checkbox {
  margin-top: .875rem;
  gap: 0
}

.price-table {
  --table-x-padding: 1.75rem;
  --table-row-offset: 0.4375rem;
  overflow: hidden;
  border-radius: var(--radius-3xl) 1.25rem 0rem 0rem;
  color: var(--color-text-primary)
}

.price-table__title {
  margin: 0 28px 17px;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: 24px;
  line-height: 150%;
  letter-spacing: -.02em
}

.price-table__filters {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: var(--space-1) 1.5rem;
  padding: 1rem;
  margin: 1rem 0;
  border-radius: var(--radius-2xl);
  border: none;
  flex-wrap: wrap;
  background: var(--color-card-background)
}

.price-table__filter .checkbox__label {
  color: #667085;
  font-weight: 500;
  font-size: var(--text-md);
  line-height: 140%
}

.price-table__checkbox {
  display: none
}

.price-table__checkbox-custom {
  width: 1.125rem;
  height: 1.125rem;
  border: .125rem solid var(--color-accent);
  border-radius: var(--radius-xs);
  margin-right: .5rem;
  background: #23272e;
  position: relative
}

.price-table__checkbox:checked+.price-table__checkbox-custom {
  background: var(--color-accent);
  border-color: var(--color-accent)
}

.price-table__checkbox:checked+.price-table__checkbox-custom::after {
  content: "";
  display: block;
  width: .625rem;
  height: .625rem;
  background: #fff;
  border-radius: .125rem;
  position: absolute;
  top: .125rem;
  left: .125rem
}

.price-table__table-wrapper {
  position: relative
}

.price-table__table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 var(--table-row-offset)!important;
  background: #fff0
}

.price-table table.price-table__table>thead>tr>th,.price-table table.price-table__table>tbody>tr>td {
  background: var(--color-card-background);
  padding: .875rem 0;
  text-align: left;
  font-size: var(--text-md);
  line-height: 140%;
  font-weight: 500;
  position: relative;
  vertical-align: middle;
  box-shadow: none!important
}

.price-table__model--image {
  position: absolute;
  right: 0;
  top: -60px;
  transform: rotate(10deg);
  width: 9rem!important;
  height: 9rem!important;
  filter: saturate(1);
  opacity: .4
}

.price-table__model {
  position: relative;
  height: 100%
}

.price-table table.price-table__table>thead>tr>th {
  color: #667085;
  font-weight: 600;
  background: var(--color-card-background);
  border: none
}

.price-table th:first-child {
  border-top-left-radius: var(--product-card-border-radius)
}

.price-table th:last-child {
  border-top-right-radius: var(--product-card-border-radius)
}

.price-table table.price-table__table>tbody>tr>td {
  padding: .625rem 0;
  color: var(--color-text-primary);
  background: #373b3c;
  overflow: hidden
}

.price-table table.price-table__table>tbody>tr {
  position: relative;
  overflow: hidden!important
}

.price-table table.price-table__table>tbody>tr>td.disabled {
  opacity: .2
}

.price-table table.price-table__table>tbody>tr.even>td {
  background: var(--color-card-background)
}

.price-table table.price-table__table thead>tr>th:before,.price-table table.price-table__table thead>tr>th:after {
  display: none!important
}

.price-table th.sorting .price-table__th-wrapper {
  position: relative
}

.price-table th.sorting .price-table__th-wrapper::after {
  --arrow-size: 1.25rem;
  position: absolute;
  top: 50%;
  right: calc(var(--arrow-size) * -1);
  content: "";
  background: url(/catalog/view/theme/default/image/arrow-down.svg) no-repeat center center / contain;
  width: var(--arrow-size);
  height: var(--arrow-size);
  transform: translateY(-50%);
  transition: transform var(--transition-base)
}

.price-table th.sorting_desc .price-table__th-wrapper,.price-table th.sorting_asc .price-table__th-wrapper {
  color: var(--color-accent)
}

.price-table th.sorting_desc .price-table__th-wrapper::after {
  background-image: url(/catalog/view/theme/default/image/arrow-down-accent.svg)
}

.price-table th.sorting_asc .price-table__th-wrapper::after {
  background-image: url(/catalog/view/theme/default/image/arrow-down-accent.svg);
  transform: translateY(-50%) rotate(180deg)
}

.price-table table.price-table__table thead>tr>th:first-child,.price-table table.price-table__table tbody>tr>td:first-child {
  padding-left: var(--table-x-padding)!important
}

.price-table table.price-table__table thead>tr>th:last-child,.price-table table.price-table__table tbody>tr>td:last-child {
  padding-right: var(--table-x-padding)!important
}

.price-table__action {
  width: 4.875rem!important
}

.price-table__action-group {
  display: flex;
  gap: var(--space-4)
}

.price-table__delivery-icon {
  --delivery-icon-size: 1.2rem;
  width: var(--delivery-icon-size);
  height: var(--delivery-icon-size)
}

.price-table__icon {
  display: flex;
  align-items: center;
  justify-content: center
}

.price-table__badge {
  display: inline-block;
  padding: .125rem .625rem;
  margin-left: .5rem;
  color: var(--color-text-primary);
  border: .0625rem solid var(--color-text-primary);
  border-radius: 2.875rem;
  font-weight: 400;
  font-size: var(--text-xs);
  line-height: 130%;
  letter-spacing: -.03em;
  transition: .3s
}

.price-table__badge.active-filter {
  background: #fff;
  color: #000
}

.price-table tr.even .price-table__badge {
  color: var(--color-accent);
  border-color: var(--color-accent)
}

.price-table__badge--blue {
  background: var(--color-accent);
  color: var(--color-text-primary)
}

.price-table__badge--subtype {
  color: #fff;
  margin-left: .25rem
}

.price-table__badge--api {
  color: #fff;
  border-color: #6c757d
}

.api-miner-row {
  opacity: .7
}

.api-miner-row .price-table__model {
  color: #6c757d
}

.api-miner-row .price-table__price {
  color: #6c757d;
  font-style: italic
}

.price-table__action-info {
  color: #6c757d;
  font-size: var(--text-xs);
  font-style: italic
}

.price-table__action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-accent);
  border: none;
  padding: 0;
  border-radius: var(--radius-3xl);
  padding: .625rem 1.5625rem;
  transition: background var(--transition-base)
}

.price-table__action-btn.in-cart {
  background: #e72f2f
}

.price-table__action-btn.active.in-cart {
  background: #c91d1d
}

button.price-table__action-btn.active {
  background: #85fd5e
}

.price-table__action-btn:hover {
  background: var(--color-card-background-dark)
}

.price-table__action-btn-icon {
  --action-btn-icon-size: 1.2rem;
  width: var(--action-btn-icon-size);
  height: var(--action-btn-icon-size)
}

.price-table__show-more-wrapper {
  display: flex;
  justify-content: center
}

.price-table__show-more {
  --more-btn-height: 3.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: var(--more-btn-height);
  padding: 0 1.5rem;
  background: var(--color-card-background);
  border-radius: 0 0 1.25rem 1.25rem;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-md);
  line-height: var(--more-btn-height);
  letter-spacing: -.02em;
  color: #667085;
  gap: var(--space-2);
  cursor: pointer;
  transition: background var(--transition-base),color var(--transition-base)
}

.price-table__show-more svg {
  --icon-size: 0.875rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.header__callback-btn {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-text-primary)
}

.header__callback-btn:hover {
  background: var(--color-accent-hover,#0056b3);
  border-color: var(--color-accent-hover,#0056b3);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgb(0 123 255 / .3)
}

.header__callback-btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgb(0 123 255 / .2)
}

.header__wishlist-btn {
  color: var(--color-text-primary);
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border);
  background: rgb(123 0 0 / 53%)
}

.header__wishlist-btn:hover {
  background: var(--color-primary-hover,#e74c3c);
  border-color: var(--color-primary-hover,#e74c3c);
  box-shadow: 0 4px 12px rgb(231 76 60 / .3)
}

.header__wishlist-btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgb(231 76 60 / .2)
}

.header__cart-btn {
  position: relative;
  display: -webkit-box!important;
  display: -ms-flexbox!important;
  display: flex!important;
  align-items: center;
  gap: var(--space-2);
  text-decoration: none
}

.header-cart-count {
  background: #007bff;
  color: #fff;
  border-radius: var(--radius-full);
  padding: 2px 6px;
  font-size: var(--text-xs);
  font-weight: 600;
  min-width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-base)
}

.header-cart-count.updated {
  transform: scale(1.2);
  background: #28a745
}

.nav_botmenu {
  position: fixed;
  bottom: .5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999;
  display: flex;
  gap: var(--space-2);
  background: var(--glass-bg-dark);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-card);
  backdrop-filter: blur(20px) saturate(2.5);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border);
  padding: .5rem
}

.cart-notification {
  position: fixed;
  top: 20px;
  right: 20px;
  padding: 12px 20px;
  border-radius: 4px;
  z-index: 10000;
  font-weight: 500;
  box-shadow: 0 4px 8px rgb(0 0 0 / .2);
  transform: translateX(100%);
  transition: transform 0.3s ease;
  color: #fff
}

.cart-notification--success {
  background: #28a745
}

.cart-notification--error {
  background: #dc3545
}

.cart-notification--info {
  background: #17a2b8
}

.btn.in-cart {
  background-color: #28a745!important;
  border-color: #28a745!important
}

.btn.in-cart:hover {
  background-color: #218838!important;
  border-color: #1e7e34!important
}

.modal-selection-modal {
  animation: fadeIn 0.3s ease
}

@keyframes fadeIn {
  from {
      opacity: 0
  }

  to {
      opacity: 1
  }
}

.quantity-input {
  width: 60px;
  padding: 5px;
  margin: 0 10px;
  border: 1px solid #ddd;
  border-radius: 3px;
  text-align: center
}

.loading {
  text-align: center
}

.floating-cart {
  background: #007bff;
  color: #fff;
  border: none;
  border-radius: .8rem;
  padding: .2rem 1rem;
  cursor: pointer;
  transition: all var(--transition-base);
  font-weight: 600;
  font-size: .8rem;
  display: flex;
  align-items: center;
  gap: var(--space-2-5);
  min-width: 4.5rem;
  justify-content: center
}

.floating-cart:hover {
  background: #0056b3;
  transform: translateX(-50%) translateY(-2px);
  box-shadow: 0 6px 25px rgb(0 123 255 / .4)
}

.floating-cart.empty {
  cursor: default;
  color: #fff;
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: var(--glass-border);
  background: rgb(0 0 0 / 40%)
}

.floating-cart.empty:hover {
  background: #6c757d;
  transform: translateX(-50%);
  box-shadow: 0 4px 20px rgb(108 117 125 / .3)
}

.floating-cart-icon {
  width: 20px;
  height: 20px
}

.floating-cart-count {
  background: rgb(0 0 0 / 90%);
  color: #fff;
  border-radius: var(--radius-xl);
  padding: 2px 8px;
  font-size: var(--text-xs);
  font-weight: 700;
  min-width: 20px;
  text-align: center;
  position: absolute;
  top: -5px;
  right: -5px
}

.floating-cart.empty .floating-cart-count {
  color: #fff
}

@media (max-width: 768px) {
  #floatingCartText {
      display:none
  }

  .floating-cart,.header__callback-btn,.header__wishlist-btn,.header__compare-btn {
      padding: .2rem .6rem!important;
      min-width: auto
  }
}

.cart-modal {
  position: fixed;
  z-index: 1001;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(0 0 0 / .6);
  display: none;
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  align-items: center;
  justify-content: center
}

.cart-modal-content {
  width: 90%;
  max-width: 40rem;
  max-height: 80dvh;
  overflow: hidden;
  overflow-y: scroll;
  background: var(--glass-bg);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-card);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  border: var(--glass-border)
}

.cart-modal-content::-webkit-scrollbar {
  display: none
}

.cart-modal-header {
  padding: 1rem 2rem;
  border-bottom: 1px solid #dee2e614;
  display: flex;
  justify-content: space-between;
  align-items: center
}

.cart-modal-header h3 {
  margin: 0;
  color: #fff;
  font-weight: 600
}

.cart-modal-close {
  color: #aaa;
  font-size: 28px;
  font-weight: 700;
  cursor: pointer;
  line-height: 1;
  padding: 0;
  background: none;
  border: none
}

.cart-modal-close:hover {
  color: #000
}

.cart-modal-body {
  padding: 0;
  overflow-y: auto
}

.cart-items {
  padding: 0;
  overflow: hidden;
  overflow-y: scroll;
  max-height: 29dvh
}

.cart-items::-webkit-scrollbar {
  display: none
}

.cart-item {
  display: flex;
  align-items: center;
  padding: .5rem 2rem;
  border-bottom: 1px solid #dee2e614;
  gap: 15px
}

.cart-item:last-child {
  border-bottom: none
}

.cart-item-image {
  width: 4rem;
  height: 3rem;
  object-fit: cover;
  border-radius: 6px;
  flex-shrink: 0;
  background: #fff
}

.cart-item-info {
  flex: 1;
  min-width: 0
}

.cart-item-name {
  font-weight: 500;
  color: #fff;
  margin-bottom: .4rem;
  font-size: .9rem
}

.cart-item-badge {
  display: inline-block;
  color: #fff;
  border-radius: 2.875rem;
  font-weight: 400;
  line-height: 130%;
  letter-spacing: -.03em
}

.cart-item-badge--subtype {
  color: #fff;
  font-weight: 600;
  font-size: .8rem;
  background: rgb(0 0 0 / 40%);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: .2rem .7rem;
  border-radius: .6rem
}

.cart-item-price {
  color: #fff;
  font-weight: 600;
  font-size: .9rem;
  background: rgb(0 0 0 / 40%);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: .2rem .7rem;
  border-radius: .6rem
}

.cart-item--type {
  color: #fff;
  font-weight: 600;
  font-size: .8rem;
  background: rgb(0 0 0 / 40%);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: .2rem .7rem;
  border-radius: .6rem
}

.cart-item--type.china {
  background: #dc3545
}

.cart-item-controls {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-shrink: 0
}

.cart-quantity-controls {
  display: flex;
  align-items: center;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid rgb(0 0 0 / 40%)
}

.cart-quantity-btn {
  width: 2rem;
  height: 2rem;
  border: none;
  background: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  color: #666;
  transition: .2s
}

.cart-quantity-btn.minus {
  background: #2b2b2b;
  color: #fff
}

.cart-quantity-btn.minus:hover {
  background: #0f5718
}

.cart-quantity-btn.plus {
  background: #2b2b2b;
  color: #fff
}

.cart-quantity-btn:hover {
  background: #c82333
}

.cart-quantity-input {
  width: 3rem;
  height: 2rem;
  text-align: center;
  border: none;
  background: rgb(0 0 0 / 40%);
  font-size: .8rem;
  color: #fff
}

.cart-quantity-input:focus {
  outline: none
}

.cart-remove-btn {
  background: rgb(0 0 0 / 40%);
  color: #fff;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  transition: .2s
}

.cart-remove-btn:hover {
  background: #c82333
}

.cart-empty {
  text-align: center;
  padding: 40px 25px;
  color: #666
}

.cart-modal-footer {
  padding: 1rem 2rem;
  border-top: 1px solid #dee2e614
}

.cart-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  font-size: 1.4rem;
  font-weight: 600
}

.cart-total-label {
  color: #fff
}

.cart-total-value-container {
  display: flex;
  gap: var(--space-4)
}

.cart-total-value {
  color: #fff
}

.cart-actions {
  margin-bottom: 20px
}

.clear-cart-btn {
  display: flex;
  align-items: center;
  gap: 0rem;
  background: #dc3545;
  color: #fff;
  border: none;
  padding: .2rem .6rem;
  border-radius: .4rem;
  font-weight: 500;
  cursor: pointer;
  transition: all var(--transition-base);
  width: auto
}

.clear-cart-btn:hover {
  background: #c82333;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgb(220 53 69 / .3)
}

.clear-cart-btn:active {
  transform: translateY(0)
}

.clear-cart-icon {
  width: .8rem;
  height: .8rem;
  flex-shrink: 0
}

.clear-cart-btn:disabled {
  background: #6c757d;
  cursor: not-allowed;
  transform: none;
  box-shadow: none
}

.quick-order-form {
  margin-top: 20px
}

.quick-order-title {
  font-weight: 600;
  color: #fff;
  margin-bottom: 15px;
  font-size: 16px;
  display: none
}

.form-row {
  display: flex;
  gap: 15px;
  margin-bottom: 15px
}

.form-group {
  flex: 1
}

.form-group.full-width {
  flex: none;
  width: 100%
}

.form-group label {
  margin-bottom: 5px;
  font-weight: 500;
  color: #fff;
  font-size: .9rem
}

.form-group input {
  width: 100%;
  padding: .7rem 1rem;
  border: 1px solid #00000014;
  border-radius: 6px;
  font-size: .8rem;
  transition: border-color 0.3s ease;
  color: #fff;
  background: rgb(0 0 0 / 20%)
}

.form-group input::-webkit-input-placeholder {
  color: #fff
}

.form-group input::-moz-placeholder {
  color: #fff
}

.form-group input:-ms-input-placeholder {
  color: #fff
}

.form-group input::-ms-input-placeholder {
  color: #fff
}

.form-group input::placeholder {
  color: #fff
}

.form-group input:focus {
  outline: none;
  border-color: #007bff;
  box-shadow: 0 0 0 2px rgb(0 123 255 / .1)
}

.form-group input.required {
  border-color: #dc3545
}

.checkout-btn {
  width: 100%;
  background: #28a745;
  color: #fff;
  border: none;
  padding: .7rem 1rem;
  border-radius: 6px;
  font-weight: 600;
  font-size: var(--text-md);
  cursor: pointer;
  transition: background-color 0.3s ease;
  margin-top: 10px
}

.checkout-btn:hover {
  background: #218838
}

.checkout-btn:disabled {
  background: #6c757d;
  cursor: not-allowed
}

.tg-banner {
  position: relative;
  padding: 0 0 4.5rem;
  margin: 0 0 4.375rem
}

.tg-banner::after {
  content: "";
  position: absolute;
  top: 100%;
  left: var(--container-padding);
  right: var(--container-padding);
  width: calc(100% - var(--container-padding) * 2);
  height: .0625rem;
  pointer-events: none;
  background: -o-linear-gradient(left,#fff0 0%,#ffffff 50%,#fff0 100%);
  background: -webkit-gradient(linear,left top,right top,from(#fff0),color-stop(50%,#ffffff),to(#fff0));
  background: linear-gradient(90deg,#fff0 0%,#ffffff 50%,#fff0 100%)
}

.tg-banner__card {
  position: relative;
  width: 100%;
  padding: 3rem 2.1875rem 2.6875rem;
  background: var(--color-card-background);
  border-radius: var(--radius-5xl);
  overflow: hidden;
  display: flex;
  align-items: center
}

.tg-banner__close {
  position: absolute;
  top: 1.5625rem;
  right: 1.5625rem;
  z-index: 3;
  width: 1.5rem;
  height: 1.5rem;
  background: #fff0;
  border: none;
  cursor: pointer;
  color: #505050;
  transition: color var(--transition-base)
}

.tg-banner__close-icon {
  width: 1.625rem;
  height: 1.625rem;
  display: block
}

.tg-banner__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  font-family: var(--font-family-secondary);
  font-weight: 600;
  line-height: 1.3
}

.tg-banner__subtitle {
  padding-right: 2rem;
  font-size: var(--text-md);
  color: rgb(255 255 255 / .5)
}

.tg-banner__title {
  font-size: var(--text-3xl);
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 0
}

.tg-banner__button {
  --btn-height: 2.5rem;
  align-self: flex-start;
  font-size: var(--text-xs);
  padding: 0 2.625rem;
  margin-top: 1rem;
  letter-spacing: 0
}

.tg-banner__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: url(/catalog/view/theme/default/image/banner-tg-bg.jpg) center/cover no-repeat;
  pointer-events: none
}

.blog {
  margin: 2.9375rem 0rem 0
}

.blog__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  margin: 0 0 3.1875rem
}

.blog__title {
  margin: 0;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: 2.8125rem;
  line-height: 130%;
  letter-spacing: -.03em;
  color: var(--color-text-primary)
}

.blog__title-icon {
  position: relative;
  top: -.25rem;
  --icon-size: 2.1875rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.blog__search {
  position: relative
}

.blog__search-input {
  width: 29.5rem;
  max-width: 100%;
  padding: .75rem .625rem .75rem 3.6875rem;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: var(--text-base);
  line-height: 130%;
  letter-spacing: -.03em;
  color: #99999b;
  border: .0625rem solid #434343;
  border-radius: var(--radius-lg);
  background: var(--white-10);
  color: var(--color-text-primary)
}

.blog__search-input::-webkit-input-placeholder {
  color: #99999b
}

.blog__search-input::-moz-placeholder {
  color: #99999b
}

.blog__search-input:-ms-input-placeholder {
  color: #99999b
}

.blog__search-input::-ms-input-placeholder {
  color: #99999b
}

.blog__search-input::placeholder {
  color: #99999b
}

.blog__search-input:focus-visible {
  outline: .0625rem solid var(--color-accent-hover)
}

.blog__search-btn {
  position: absolute;
  top: .375rem;
  bottom: .375rem;
  left: .4375rem;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--radius-lg);
  padding: .625rem;
  background: #070809;
  color: var(--color-text-primary)
}

.blog__search-icon {
  --icon-size: 0.75rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size)
}

.blog__slider {
  --slider-gap: var(--space-5);
  position: relative;
  padding: 0 0 2.8125rem
}

.blog__slide.swiper-slide {
  height: auto
}

.blog__swiper {
  overflow: visible
}

.blog__grid {
  --blog-grid-cols: 3;
  display: grid;
  grid-template-columns: repeat(var(--blog-grid-cols),1fr);
  gap: var(--space-5)
}

.blog-card {
  padding: 1.25rem;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: var(--space-9);
  font-family: var(--font-family-quaternary);
  background: #121618;
  border-radius: var(--radius-5xl);
  transition: background-color var(--transition-base)
}

.blog-card:hover {
  background: var(--white-100)
}

.blog-card__inner,.blog-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-9)
}

.blog-card__inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 35rem;
  height: 100%
}

.blog-card--product .blog-card__inner {
  min-height: 23.25rem
}

.blog-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-9)
}

.blog-card__date {
  font-weight: 400;
  font-size: var(--text-base);
  line-height: 1.71;
  color: rgb(255 255 255 / .5);
  transition: color var(--transition-base)
}

.blog-card__tag {
  --blog-card-tag-height: 1.5rem;
  display: flex;
  align-items: center;
  padding: 0 .9375rem;
  height: var(--blog-card-tag-height);
  line-height: var(--blog-card-tag-height);
  background: #23292c;
  border-radius: var(--radius-5xl);
  border: .0625rem solid #474747
}

.blog-card__tag-inner {
  font-weight: 400;
  font-size: var(--text-base);
  color: var(--color-text-primary);
  letter-spacing: 0
}

.blog-card__link {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .5625rem;
  color: var(--color-text-primary);
  transition: color var(--transition-base)
}

.blog-card__title {
  font-weight: 700;
  font-size: var(--text-2xl);
  line-height: 1.4;
  margin: 0;
  letter-spacing: 0;
  transition: color var(--transition-base)
}

.blog-card__icon {
  --blog-card-link-icon: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--blog-card-link-icon);
  width: var(--blog-card-link-icon);
  height: var(--blog-card-link-icon)
}

.blog-card__desc {
  font-weight: 400;
  font-size: var(--text-lg);
  color: #777;
  line-height: 1.33
}

.blog-card__image-wrapper {
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding: 0 0 56.25%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #23292c;
  border-radius: 1.1875rem
}

.blog-card--product .blog-card__image-wrapper {
  padding: 0 0 84%
}

.blog-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.blog-card__views {
  transition: color var(--transition-base)
}

.blog-card:hover .blog-card__link {
  color: var(--color-text-dark)
}

.blog-card:hover .blog-card__date,.blog-card:hover .blog-card__views {
  color: rgb(0 0 0 / .5)
}

.blog__accent-text {
  font-size: var(--text-2xl);
  line-height: 130%;
  letter-spacing: -.03em;
  text-align: right;
  color: var(--color-accent)
}

.blog-categories {
  --category-height: 3rem;
  margin: 0 0 6.25rem
}

.blog-categories__list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-5)
}

.blog-categories__item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--category-height);
  gap: .9375rem;
  padding: 0 1.25rem;
  font-family: var(--font-family-quaternary);
  font-weight: 600;
  font-size: var(--text-md);
  line-height: var(--category-height);
  color: #c0c5d0;
  background: #121618;
  border-radius: var(--radius-lg);
  transition: color var(--transition-base),background-color var(--transition-base)
}

.blog-categories__item--current {
  color: var(--color-text-primary);
  background: var(--color-accent)
}

.blog-categories__item-icon {
  --icon-size: 2.1875rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size);
  object-fit: contain
}

.blog-categories__item-text {
  white-space: nowrap;
  letter-spacing: 0
}

.blog__more-wrapper {
  display: flex;
  justify-content: center
}

.blog__more {
  padding: 0 4.125rem;
  margin: 7.9375rem 0 0
}

.blog--grid-single {
  margin-top: 9.375rem
}

.article {
  --sidebar-width: 18.3125rem;
  margin: 8.5rem 0 6rem;
  position: relative
}

.article::before {
  position: absolute;
  top: -3.75rem;
  left: -38.25rem;
  z-index: 9999999999;
  content: "";
  width: 47rem;
  height: 131.5rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  transform: rotate(32deg);
  pointer-events: none
}

.article::after {
  content: "";
  position: absolute;
  top: -38.3125rem;
  right: -41.875rem;
  z-index: -1;
  width: 83rem;
  height: 83rem;
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .3) 0%,#fff0 100%);
  pointer-events: none;
  opacity: .3
}

.article__container {
  position: relative;
  z-index: 99999999999
}

.article__title {
  margin: 0;
  font-family: var(--font-family-quaternary);
  font-weight: 700;
  font-size: 2.8125rem;
  line-height: 140%;
  letter-spacing: .04em;
  color: var(--color-text-primary)
}

.article__header {
  display: flex;
  flex-direction: column-reverse;
  margin: 3.75rem 0
}

.article__meta {
  display: flex;
  flex-direction: column;
  gap: 3.3125rem;
  font-weight: 600;
  font-size: var(--text-md);
  line-height: 150%;
  letter-spacing: -.02em
}

.article__meta-item {
  font-family: var(--font-family-quinary);
  color: #a4a4a4
}

.article__meta-value {
  margin: .125rem 0 0;
  font-family: var(--font-family-secondary);
  color: var(--color-text-primary);
  transition: color var(--transition-base)
}

a.article__meta-value:hover {
  color: var(--color-accent)
}

.article__image-wrapper {
  position: relative;
  z-index: 1;
  overflow: hidden;
  height: 0;
  padding-bottom: 30.7%;
  border-radius: var(--radius-3xl)
}

.article__image {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.article__body {
  font-family: var(--font-family-quaternary);
  font-weight: 400;
  font-size: var(--text-lg);
  line-height: 133%;
  color: #fff
}

.article__body p {
  font-size: 1em;
  margin: 0 0 1.5em 0;
  line-height: 1.6
}

.article__body iframe,.seo-text iframe {
  max-width: 100%
}

.article__body h1 {
  font-size: 2.5em;
  margin: 2em 0 1em 0;
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-text-primary)
}

.article__body h2 {
  font-size: 2em;
  margin: 2em 0 1em 0;
  font-weight: 600;
  line-height: 1.3;
  color: var(--color-text-primary)
}

.article__body h3 {
  font-size: 1.5em;
  margin: 1.5em 0 .75em 0;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-text-primary)
}

.article__body h4 {
  font-size: 1em;
  margin: 1.5em 0 .75em 0;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-text-primary)
}

.article__body h5 {
  font-size: .875em;
  margin: 1.5em 0 .75em 0;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-text-primary)
}

.article__body h6 {
  font-size: .75em;
  margin: 1.5em 0 .75em 0;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-text-primary)
}

.article__body ul,.article__body ol {
  font-size: 1em;
  margin: 1.5em 0;
  padding-left: 1.2em;
  line-height: 1.6
}

.article__body li {
  font-size: 1em;
  margin: .5em 0;
  line-height: 1.6
}

.article__body ul ul,.article__body ol ol,.article__body ul ol,.article__body ol ul {
  margin: .5em 0
}

.article__body ul {
  padding-left: 0
}

.article__body ul li {
  padding-left: 1em;
  margin: 1em 0;
  border-left: .125em solid var(--color-accent);
  list-style: none
}

.article__body a {
  text-decoration: underline;
  transition: color 0.3s ease
}

.article__body a:hover {
  text-decoration: none
}

.article__body a:visited {
  color: var(--color-accent)
}

.article__body img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 1.5em 0;
  border-radius: .25em
}

.article__body figure {
  margin: 1.5em 0
}

.article__body figcaption {
  font-size: .875em;
  color: #666;
  text-align: center;
  margin-top: .5em
}

.article__body blockquote {
  font-size: 1em;
  margin: 1.5em 0;
  padding: 1em 1.5em;
  border-left: .75em solid var(--color-accent);
  background-color: var(--color-card-background);
  font-style: italic
}

.article__body blockquote p {
  margin: 0
}

.article__body blockquote cite {
  font-size: .875em;
  color: #666;
  display: block;
  margin-top: .5em
}

.article__body code {
  font-size: .875em;
  background-color: var(--color-card-background);
  padding: .125em .75em;
  border-radius: .75em;
  font-family: "Courier New",monospace;
  color: var(--color-text-primary)
}

.article__body pre {
  font-size: .875em;
  background-color: var(--color-card-background);
  padding: 1em;
  border-radius: .75em;
  overflow-x: auto;
  margin: 1.5em 0
}

.article__body pre code {
  background: none;
  padding: 0
}

.article__body table {
  font-size: 1em;
  width: 100%;
  border: .0625em solid #303030;
  border-collapse: collapse;
  margin: 1.5em 0
}

.article__body th,.article__body td {
  padding: .75em;
  text-align: left;
  border-bottom: .0625em solid #303030
}

.article__body th {
  background-color: var(--color-card-background);
  font-weight: 600;
  color: var(--color-text-primary)
}

.article__body tr:hover {
  background-color: #262728
}

.article__body hr {
  border: none;
  border-top: .0625em solid #dee2e6;
  margin: 2em 0
}

.article__body strong,.article__body b {
  font-weight: 600;
  color: var(--color-text-primary)
}

.article__body em,.article__body i {
  font-style: italic
}

.article__body mark {
  background-color: #fff3cd;
  padding: .125em .25em
}

.article__body del {
  text-decoration: line-through;
  color: #666
}

.article__body ins {
  text-decoration: underline
}

.article__body sub {
  font-size: .75em;
  vertical-align: sub
}

.article__body sup {
  font-size: .75em;
  vertical-align: super
}

.article__body dl {
  font-size: 1em;
  margin: 1.5em 0
}

.article__body dt {
  font-weight: 600;
  margin-top: 1em
}

.article__body dd {
  margin: .5em 0 0 1em;
  padding-left: 1em
}

.article__body address {
  font-size: 1em;
  font-style: italic;
  margin: 1.5em 0
}

.article__body time {
  font-size: 1em;
  color: #666
}

.article__body progress {
  width: 100%;
  height: 1.5em;
  margin: 1em 0
}

.article__body meter {
  width: 100%;
  height: 1.5em;
  margin: 1em 0
}

.article__body details {
  font-size: 1em;
  margin: 1.5em 0;
  padding: 1em;
  border: .0625em solid #dee2e6;
  border-radius: .75em
}

.article__body details>summary {
  font-weight: 600;
  cursor: pointer;
  margin-bottom: .5em
}

.article__body details[open]>summary {
  margin-bottom: 1em
}

.article__body video,.article__body audio {
  width: 100%;
  margin: 1.5em 0;
  border-radius: .75em
}

.article__body canvas {
  max-width: 100%;
  height: auto;
  margin: 1.5em 0;
  border: .0625em solid #dee2e6;
  border-radius: .75em
}

.article__body nav {
  font-size: 1em;
  margin: 3em 0;
  padding: 1.5em;
  background-color: var(--color-card-background);
  border-radius: 1.1em
}

.article__body nav>b {
  display: block;
  font-size: 1.25em;
  margin-bottom: 1em;
  font-weight: 600;
  color: var(--color-text-primary)
}

.article__body nav ol {
  margin: 0;
  padding-left: 1em
}

.article__body nav>ol {
  padding-left: .2em
}

.article__body nav li {
  margin: .5em 0
}

.article__body nav li:last-child {
  margin-bottom: 0
}

.article__body nav a {
  text-decoration: none;
  transition: color 0.3s ease
}

.article__body nav a:hover {
  text-decoration: underline
}

.article__body>*:first-child {
  margin-top: 0
}

.article__body>*:last-child {
  margin-bottom: 0
}

.reviews-empty {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: var(--color-card-background);
  padding: 1rem 2rem 2rem;
  border-radius: var(--radius-2xl)
}

.article-comments__form {
  background: #121618;
  border-radius: var(--radius-2xl);
  margin-top: 1rem
}

.article-comments__form--h2 {
  font-weight: 700;
  font-size: var(--text-lg);
  margin-bottom: 12px;
  color: var(--white-100)
}

.review-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-3)
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-1-5)
}

.form-group.required .form-label::after {
  content: " *";
  color: var(--color-accent-green)
}

.form-label {
  font-weight: 600;
  color: var(--white-100)
}

.form-input,.form-textarea {
  width: 100%;
  border: 1px solid var(--color-border-dark);
  border-radius: 6px;
  padding: 10px 12px;
  color: var(--white-100);
  background: var(--black-10)
}

.has-error>.form-input,.has-error>.form-textarea {
  border: 1px solid red
}

.form-input::-webkit-input-placeholder,.form-textarea::-webkit-input-placeholder {
  color: var(--color-text-tertiary)
}

.form-input::-moz-placeholder,.form-textarea::-moz-placeholder {
  color: var(--color-text-tertiary)
}

.form-input:-ms-input-placeholder,.form-textarea:-ms-input-placeholder {
  color: var(--color-text-tertiary)
}

.form-input::-ms-input-placeholder,.form-textarea::-ms-input-placeholder {
  color: var(--color-text-tertiary)
}

.form-input::placeholder,.form-textarea::placeholder {
  color: var(--color-text-tertiary)
}

.form-input:focus,.form-textarea:focus {
  outline: none;
  border-color: var(--color-accent);
  box-shadow: 0 0 0 3px var(--color-accent-light)
}

.form-textarea {
  min-height: 120px;
  resize: vertical
}

.form-help {
  font-size: var(--text-xs);
  color: var(--color-text-secondary)
}

.rating-compact {
  display: flex;
  flex-direction: column;
  gap: var(--space-1-5)
}

.rating-stars {
  display: inline-flex;
  gap: var(--space-1-5);
  position: relative
}

.rating-star {
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: var(--radius-md);
  transition: background-color .15s ease,transform .1s ease;
  background: #fff0
}

.rating-star:hover {
  background: var(--white-10)
}

.rating-star:focus-within {
  outline: 2px solid var(--color-accent);
  outline-offset: 2px
}

.rating-star input {
  position: absolute;
  opacity: 0;
  pointer-events: none
}

.star-icon {
  color: var(--color-border);
  display: inline-flex;
  transition: color .15s ease,transform .1s ease
}

.rating-star:hover .star-icon {
  transform: scale(1.05)
}

.rating-star.is-active .star-icon {
  color: var(--color-accent)
}

.rating-star.is-preview .star-icon {
  color: var(--color-accent)
}

.form-actions {
  margin-top: 1rem;
  display: flex;
  gap: var(--space-4)
}

.form-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 10px 16px;
  border-radius: var(--radius-md);
  background: var(--color-accent);
  color: var(--white-100);
  border: none;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: .2px;
  transition: background-color .15s ease,transform .05s ease
}

.form-button:hover {
  background: var(--color-accent-hover)
}

.form-button:active {
  transform: translateY(1px)
}

@media (min-width: 640px) {
  .article-comments__form {
      padding:2rem
  }

  .review-form {
      gap: 14px
  }
}

.reviews-list {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.review-item {
  background: #0000009c;
  border-radius: var(--radius-2xl)
}

.review-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3)
}

.review-author {
  display: flex;
  align-items: center;
  gap: var(--space-3)
}

.review-author-avatar {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background: var(--color-card-background-dark)
}

.review-author-avatar svg {
  color: var(--white-10)
}

.review-author-info {
  display: flex;
  flex-direction: column
}

.review-author-name {
  font-weight: 600;
  color: var(--white-100)
}

.review-date {
  font-size: var(--text-xs);
  color: var(--color-text-secondary)
}

.review-rating {
  display: flex;
  gap: var(--space-1)
}

.review-star {
  display: inline-flex;
  line-height: 1
}

.review-star svg {
  width: 16px;
  height: 16px
}

.review-star--filled {
  color: var(--color-accent)
}

.review-star--empty {
  color: var(--color-border)
}

.review-content {
  margin-top: 8px;
  color: var(--color-text-secondary)
}

.review-content p {
  margin: 0;
  line-height: 1.6;
  white-space: pre-line
}

.reviews-pagination {
  margin-top: 16px;
  display: flex;
  justify-content: center
}

.reviews-empty {
  background: #121618;
  border: 1px dashed var(--color-border-dark);
  border-radius: var(--radius-md);
  padding: 24px;
  text-align: center;
  color: var(--color-text-secondary)
}

.reviews-empty-icon {
  display: flex;
  justify-content: center;
  margin-bottom: 8px
}

.reviews-empty-icon svg {
  color: var(--color-border-dark)
}

@media (min-width: 640px) {
  .review-item {
      padding:2rem;
      margin: 1rem
  }

  .reviews-list {
      gap: 20px
  }
}

.moneta_box__catalog {
  border-radius: .75em;
  padding: 1.875em;
  background: var(--color-card-background);
  color: var(--color-text-primary);
  display: flex;
  justify-content: space-between;
  margin: 1.25em 0;
  align-items: center;
  overflow: hidden;
  position: relative;
  box-shadow: 0 0 2.5em -.625em var(--color-card-background);
  align-items: center
}

.moneta_box__catalog.calc p.moneta_box__catalog__p {
  text-align: right
}

.moneta_box__catalog.otel {
  background: var(--color-accent)
}

.moneta_box__catalog.otel .moneta_box__catalog__svg {
  top: -20%;
  right: 30%
}

.moneta_box__catalog.calc {
  background: -o-linear-gradient(135deg,var(--color-accent),var(--color-accent),var(--color-accent),var(--color-accent));
  background: linear-gradient(-45deg,var(--color-accent),var(--color-accent),var(--color-accent),var(--color-accent));
  background-size: 800% 800%;
  animation: gradient 15s ease infinite;
  flex-direction: row-reverse
}

.moneta_box__catalog.calc p.moneta_box__catalog__p {
  text-align: right
}

.moneta_box__catalog.calc .moneta_box__catalog__svg {
  right: auto;
  left: 30%
}

.moneta_box__catalog__svg {
  -webkit-filter: invert(1);
  filter: invert(1);
  width: 7.5em;
  height: 7.5em;
  position: absolute;
  right: 20%;
  transform: rotate(-26deg);
  bottom: -3.75em;
  opacity: .4
}

p.moneta_box__catalog__p {
  max-width: 50%;
  min-width: 15.625em;
  margin: 0!important
}

p.moneta_box__catalog__p strong {
  text-transform: uppercase;
  letter-spacing: .0625em
}

a.moneta_box__catalog__a {
  padding: .625em 1.5625em;
  border-radius: .625em;
  border: .0625em solid var(--color-text-primary);
  color: var(--color-text-primary);
  letter-spacing: .0625em;
  background: rgb(0 0 0 / 30%);
  z-index: 2;
  position: relative;
  text-decoration: none!important;
  transition: 0.3s
}

.moneta_box__catalog__a:hover {
  background: var(--color-accent-hover)
}

.subscribe-tg-blog {
  height: 3.125em;
  background: -o-linear-gradient(45deg,#00d2ff,#3a7bd5);
  background: linear-gradient(45deg,#00d2ff,#3a7bd5);
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  border-radius: .9375em;
  display: flex;
  align-items: center;
  justify-content: space-around;
  overflow: hidden;
  color: #fff;
  font-weight: 600;
  text-align: center;
  transition: All 0.3s ease
}

.subscribe-tg-blog:hover {
  transition: All 0.3s ease;
  box-shadow: 0 0 1.25em .1875em rgb(54 133 251 / 60%)
}

.subscribe-tg-blog-btn {
  background-color: var(--white-100)
}

.subscribe-tg-blog-logo {
  width: 3.125em;
  margin-top: .3125em;
  color: rgb(206 226 241 / .15)
}

.subscribe_button {
  background: -o-linear-gradient(45deg,#00d2ff,#3a7bd5,#d76565,#dd5757);
  background: linear-gradient(45deg,#00d2ff,#3a7bd5,#d76565,#dd5757);
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  align-items: center;
  border-radius: .5em;
  overflow: hidden;
  color: var(--color-text-primary);
  font-weight: 600;
  text-align: center;
  transition: All 0.3s ease
}

.subscribe-svg-youtube {
  right: 0;
  top: -.625em
}

.subscribe_button_telegram__a {
  display: flex;
  color: var(--color-text-primary)!important;
  height: 3.125em;
  width: 100%;
  justify-content: center;
  align-items: center;
  transition: 0.2s;
  position: relative;
  z-index: 2;
  text-decoration: none!important
}

.subscribe_button_youtube__a {
  display: flex;
  color: var(--color-text-primary)!important;
  height: 3.125em;
  width: 100%;
  justify-content: center;
  align-items: center;
  z-index: 2;
  position: relative;
  text-decoration: none!important
}

.subscribe-svg-tg {
  top: 0;
  left: 0
}

.subscribe_button__part>svg {
  width: 12.5em;
  height: 12.5em;
  position: absolute;
  z-index: 1;
  opacity: .2
}

.subscribe_button_telegram__a {
  display: flex;
  color: var(--color-text-primary);
  height: 6.25em;
  width: 100%;
  justify-content: center;
  letter-spacing: .0625em;
  align-items: center;
  transition: 0.2s;
  position: relative;
  z-index: 2
}

.subscribe_button__part {
  flex: 1;
  position: relative;
  display: block;
  transition: 0.2s;
  width: 100%
}

.subscribe_button__part:hover {
  background: rgb(0 0 0 / 29%)
}

.subscribe_button_youtube__a {
  display: flex;
  color: var(--color-text-primary);
  height: 6.25em;
  width: 100%;
  letter-spacing: .0625em;
  justify-content: center;
  align-items: center;
  z-index: 2;
  position: relative
}

.subscribe-svg-tg {
  top: 0;
  left: 0
}

.hero--about {
  --hero-bottom-padding: 15.45rem;
  padding-bottom: var(--hero-bottom-padding)
}

.hero__description strong,.hero__description b {
  color: var(--color-text-primary)
}

.hero__container {
  -ms-grid-row-align: stretch;
  align-self: stretch
}

.hero__media {
  --image-width: 53.4375rem;
  position: absolute;
  top: -1.4375rem;
  right: 4.5rem;
  z-index: 1;
  width: var(--image-width);
  object-fit: contain;
  pointer-events: none
}

.hero__media--leasing {
  --image-width: 53.125rem;
  top: -1.5rem;
  right: 3.1875rem
}

.hero__media--delivery {
  --image-width: 70.4375rem;
  top: -1rem;
  right: -5.1rem
}

.hero__media::before {
  content: "";
  position: absolute;
  top: -47.5rem;
  right: -74.375rem;
  z-index: -1;
  width: 188.875rem;
  height: 132.1875rem;
  background: url(/catalog/view/theme/default/image/hero/light-sparkles.png) center / contain
}

.hero__media--leasing::before {
  right: -73.5625rem
}

.hero__media--delivery::before {
  right: -63.375rem
}

.hero__media-image {
  width: var(--image-width);
  object-fit: contain;
  pointer-events: none
}

.hero__bg--repair {
  bottom: -7.75rem;
  right: 4.6875rem;
  width: 53.4375rem;
  height: 50.4375rem
}

.hero__media-employees {
  position: absolute;
  bottom: calc(-1 * var(--hero-bottom-padding));
  right: 0;
  z-index: 3;
  width: 65.1875rem;
  height: 44.8125rem;
  object-fit: contain
}

.hero__media-pool {
  position: absolute;
  top: -12.4375rem;
  z-index: 1;
  right: 6.25rem;
  width: 51.875rem;
  height: 51.375rem;
  mix-blend-mode: color-dodge;
  object-fit: contain
}

.hero--about .hero__badge,.hero--about .hero__title,.hero--about .hero__description,.hero--about .hero__buttons,.hero--about .hero__divider,.hero--about .hero__partners {
  z-index: 4
}

@keyframes gradient {
  0% {
      background-position: 0% 50%
  }

  50% {
      background-position: 100% 50%
  }

  100% {
      background-position: 0% 50%
  }
}

@media (hover: hover) {
  .menu__header-nav-link:hover,.menu-listing__link:hover,.menu-listing__title:hover {
      color:var(--color-accent)
  }

  .menu__services-card:hover .menu__services-icon-wrapper {
      background: var(--color-accent)
  }

  .menu__services-title:hover {
      color: var(--color-accent)
  }

  .menu__services-card:hover::before {
      opacity: 1;
      visibility: visible
  }

  .header__compare-btn:hover {
      background: #031235!important
  }

  .header__menu-link:hover,.header__catalog:hover {
      color: var(--color-accent)
  }

  .button--primary:hover,.button--secondary:hover {
      background: var(--color-accent);
      color: var(--color-text-primary)
  }

  .slider-navigation__button:not(:disabled):hover {
      background-color: var(--color-accent-hover)
  }

  .media-card__video-preview:hover {
      transform: scale(1.05)
  }

  .top-miners__category-tab:hover:not(.active),.top-miners__subcategory:hover:not(.active) {
      background: var(--black-10)
  }

  .footer__menu-link:hover,.breadcrumbs__link:hover,.product-card__name:hover {
      color: var(--color-accent)
  }

  .special-offer__close-icon:hover {
      color: var(--color-white)
  }

  .special-offer__social-link:hover {
      background-color: var(--color-accent)
  }

  .categories__item:hover {
      background-color: var(--color-accent-hover)
  }

  .filters__tag-remove:hover .filters__tag-remove-icon {
      transform: rotate(180deg);
      transform-origin: center;
      -ms-transform-origin: center;
      transform-origin: center
  }

  .filters__sort-btn:hover,.filters__toggle-btn:hover,.filters__tag:hover,.filters__item:hover {
      color: var(--white-100);
      background-color: var(--color-accent)
  }

  .product-card__compare:hover,.product-card__wishlist:hover {
      color: var(--color-background-light);
      background: var(--color-accent)
  }

  .product-purchase__manager-btn:hover {
      background: var(--color-accent-hover)
  }

  .product-gallery__nav-btn:hover,.product-gallery:hover .product-gallery__nav-btn:not(.swiper-button-lock) {
      opacity: 1;
      visibility: visible
  }

  .product-gallery__nav-btn:hover:not(.swiper-button-disabled) {
      background: var(--white-10)
  }

  .button--accent:hover {
      background: var(--color-accent-hover)
  }

  .price-table__show-more:hover {
      background: var(--color-accent);
      color: var(--color-text-primary)
  }

  .tg-banner__close:hover {
      color: var(--color-text-primary)
  }

  .blog-card .blog-card__link:hover {
      color: var(--color-accent)
  }

  a.blog-categories__item:hover {
      color: var(--color-text-primary);
      background: var(--color-accent-hover)
  }
}

@media (hover: none) {
  .menu__header-nav-link:active,.menu-listing__link:active,.menu-listing__title:active {
      color:var(--color-accent)
  }

  .menu__services-card:active .menu__services-icon-wrapper {
      background: var(--color-accent)
  }

  .menu__services-title:active {
      color: var(--color-accent)
  }

  .header__action-btn:active {
      background: var(--color-text-primary);
      color: var(--black-100)
  }

  .header__menu-link:active,.header__catalog:active,.product-card__name:active {
      color: var(--color-accent)
  }

  .button--primary:active,.button--secondary:active {
      background: var(--color-accent);
      color: var(--color-text-primary)
  }

  .slider-navigation__button:not(:disabled):active {
      background-color: var(--color-accent-hover)
  }

  .top-miners__category-tab:active:not(.active),.top-miners__subcategory:active:not(.active) {
      background: var(--black-10)
  }

  .footer__menu-link:active,.breadcrumbs__link:active {
      color: var(--color-accent)
  }

  .special-offer__close-icon:active {
      color: var(--color-white)
  }

  .special-offer__social-link:active {
      background-color: var(--color-accent)
  }

  .categories__item:active {
      background-color: var(--color-accent-hover)
  }

  .filters__tag-remove:active .filters__tag-remove-icon {
      transform: rotate(180deg);
      transform-origin: center;
      -ms-transform-origin: center;
      transform-origin: center
  }

  .filters__sort-btn:active,.filters__toggle-btn:active,.filters__tag:active,.filters__item:active {
      color: var(--white-100);
      background-color: var(--color-accent)
  }

  .product-card__compare:active,.product-card__wishlist:active {
      color: var(--color-accent)
  }

  .product-purchase__installment-btn:active {
      background: var(--color-gray-100)
  }

  .product-purchase__manager-btn:active {
      background: var(--color-accent-hover)
  }

  .product-gallery__nav-btn:active {
      color: var(--color-accent)
  }

  .button--accent:hover {
      background: var(--color-accent-hover)
  }

  .price-table__show-more:active {
      background: var(--color-accent);
      color: var(--color-text-primary)
  }

  .tg-banner__close:active {
      color: var(--color-text-primary)
  }

  .blog-card .blog-card__link:active {
      color: var(--color-accent)
  }

  a.blog-categories__item:active {
      color: var(--color-text-primary);
      background: var(--color-accent-hover)
  }
}

@media (min-width: 1200px) {
  .mobile-menu {
      display:none
  }

  .blog__more {
      --btn-height: 4.25rem;
      font-size: var(--text-base)
  }

  .blog__swiper::after {
      content: "";
      position: absolute;
      top: -.875rem;
      left: calc(100% - var(--container-padding));
      z-index: 2;
      width: 30.375rem;
      height: calc(100% + 0.875rem);
      background: -webkit-gradient(linear,right top,left top,from(#070809),to(#fff0));
      background: -o-linear-gradient(right,#070809 0%,#fff0 100%);
      background: linear-gradient(270deg,#070809 0%,#fff0 100%);
      pointer-events: none
  }

  .article__body {
      margin: 0 0 0 var(--sidebar-width)
  }

  .article__title {
      margin: 0 0 0 var(--sidebar-width)
  }

  .article__header {
      display: grid;
      grid-template-columns: var(--sidebar-width) 1fr
  }

  .article__inner {
      padding: 0 11.5rem 0 0
  }

  .moneta_box__catalog {
      margin: 1.25em -1.25em
  }

  .article__meta {
      padding: .4375rem 2.5rem 0 0
  }

  html {
      font-size: clamp(16px, .8334vw, 20px)
  }

  .header__action-btn--menu {
      display: none
  }

  .recommends__navigation {
      padding: 0 0 1rem
  }

  .top-miners__swiper {
      height: 100%;
      padding-right: var(--container-padding-sm)
  }

  .footer__column:nth-child(4) .footer__title,.footer__column:nth-child(5) .footer__title,.footer__column:nth-child(6) .footer__title {
      height: 3.5rem
  }

  .special-offer__content {
      flex-direction: row;
      align-items: end
  }
}

@media (max-width: 1800px) {
  .channel__info {
      flex:1 0 32rem
  }
}

@media (max-width: 1710px) {
  .header__wrapper {
      gap:var(--space-9)
  }

  .header__menu {
      gap: 1.6rem
  }

  .header__action-btn-text.number {
      display: none
  }

  .product-card__content {
      padding: 0
  }

  .product-card__spec {
      font-size: .9375rem
  }

  .product-card__coins {
      gap: var(--space-1)
  }

  .product-card__coins,.product-card__spec-value {
      margin: .125rem 0 0
  }

  .product-card__coin-icon {
      --coins-size: 1.125rem
  }

  .main-video {
      flex-direction: column;
      gap: var(--space-5)
  }

  .main-video__player-wrapper {
      flex: initial
  }

  .main-video__player {
      max-width: 30.5rem
  }

  .main-video__desc {
      margin: .5rem 0 0
  }

  .product-info__image-wrapper {
      margin: 0
  }

  .product-info {
      gap: 2.4rem
  }

  .product-info__title {
      font-size: var(--text-4xl)
  }

  .price-table {
      --table-x-padding: 1rem
  }

  .price-table table.price-table__table>thead>tr>th,.price-table table.price-table__table>tbody>tr>td {
      padding-right: .25rem;
      padding-left: .25rem;
      font-size: var(--text-base)
  }

  .price-table__action {
      width: 3.625rem!important
  }

  .price-table__action-btn {
      padding: .375rem 1rem
  }

  .price-table__action-btn-icon {
      --action-btn-icon-size: 1rem
  }
}

@media (max-width: 1500px) {
  .menu-open {
      overflow:hidden
  }

  .nomobile {
      display: none
  }

  .overlay {
      z-index: 101
  }

  .header__action-btn--menu {
      display: flex
  }

  .menu {
      display: none
  }

  .mobile-menu {
      display: block;
      position: fixed;
      top: 0;
      left: -100%;
      z-index: 9999999;
      max-width: 25rem;
      width: 100%;
      height: 100%;
      background: var(--white-100);
      color: var(--black-100);
      overflow: hidden;
      font-family: var(--font-family-quaternary);
      opacity: 0;
      visibility: hidden;
      transition: left var(--transition-base)
  }

  .menu-open .mobile-menu {
      left: 0;
      opacity: 1;
      visibility: visible
  }

  .mobile-menu__wrapper {
      display: flex;
      flex-direction: column;
      height: 100%;
      overflow: hidden
  }

  .mobile-menu__header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 3.0625rem;
      font-size: var(--text-md);
      font-family: var(--font-family-quaternary);
      padding: 1.25rem .75rem;
      border-bottom: .0625rem solid #f8f6fb;
      transition: opacity ease 0.2s,visibility ease 0.2s
  }

  .mobile-menu__nav-link {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: var(--space-2-5);
      width: 100%;
      padding: .75rem 1rem .75rem .75rem;
      font-size: .9375rem;
      font-weight: 500;
      line-height: 120%;
      color: inherit;
      transition: color var(--transition-base)
  }

  .mobile-menu__nav-link:active {
      background: #f8f6fb
  }

  .mobile-menu__nav-link--nested::after,.mobile-menu__nav-link--dropdown::after {
      content: "";
      width: 1.25rem;
      height: 1.25rem;
      background: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9 19L16 12L9 5" stroke="%23000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center / contain
  }

  .mobile-menu__nav-link--dropdown::after {
      transform: rotate(90deg);
      transition: transform var(--transition-base)
  }

  .mobile-menu__nav-link--dropdown.active::after {
      transform: rotate(270deg)
  }

  .mobile-menu__nav-item,.mobile-menu__nav-dropdown-item {
      list-style: none
  }

  .mobile-menu__nav-dropdown-link {
      display: flex;
      align-items: center;
      padding: .5rem 1.5rem;
      font-size: var(--text-base);
      font-weight: 400;
      color: rgb(0 0 0 / .5)
  }

  .mobile-menu__nav-dropdown {
      display: none
  }

  .mobile-menu__nav-link--dropdown.active+.mobile-menu__nav-dropdown {
      display: block
  }

  .mobile-menu__content,.mobile-menu__nested {
      position: absolute;
      inset: 0;
      z-index: 1;
      display: flex;
      flex-direction: column;
      width: 100%;
      background: var(--white-100);
      height: 100vh;
      height: 100dvh;
      overflow-y: auto
  }

  .mobile-menu__content {
      transition: opacity var(--transition-base),visibility var(--transition-base),transform var(--transition-base)
  }

  .mobile-menu__content.hide {
      transform: translateX(-100%)
  }

  .mobile-menu__content.hide .mobile-menu__header {
      opacity: 0;
      visibility: hidden
  }

  .mobile-menu__nested {
      transform: translateX(100%);
      transition: opacity var(--transition-base),visibility var(--transition-base),transform var(--transition-base)
  }

  .mobile-menu__nested.active {
      transform: translateX(0)
  }

  .mobile-menu__close {
      margin-left: auto;
      color: inherit
  }

  .mobile-menu__close:active {
      color: var(--color-accent)
  }

  .mobile-menu__back {
      font-size: var(--text-md);
      font-family: var(--font-family-quaternary);
      font-weight: 600;
      color: var(--color-accent);
      transition: color var(--transition-base)
  }

  .mobile-menu__logo-img {
      width: 12rem;
      height: 1.5625rem;
      object-fit: contain
  }

  .mobile-menu__search {
      padding: 1rem .75rem .625rem
  }

  .menu-search-input {
      padding: .375rem .75rem .375rem 2.3125rem
  }

  .menu-search-label {
      left: .85rem
  }

  .menu-search-icon {
      --search-icon-size: 1.125rem
  }

  .mobile-menu-close svg {
      --icon-size: 1.5rem;
      flex: 0 0 var(--icon-size);
      width: var(--icon-size);
      height: 0 0 var(--icon-size)
  }

  .mobile-menu__footer {
      margin: auto 0 0;
      padding: 1.25rem .75rem;
      border-top: .0625rem solid #f8f6fb
  }

  .mobile-menu__help-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: var(--space-1-5);
      padding: .375rem .75rem .4375rem;
      border: .0625rem solid var(--black-100);
      border-radius: var(--radius-3xl);
      background: #fff0;
      color: var(--black-100);
      cursor: pointer;
      font-size: var(--text-base);
      -webkit-user-select: none;
      -moz-user-select: none;
      user-select: none;
      transition: all var(--transition-base)
  }

  .mobile-menu__help-btn:active {
      background-color: var(--black-10)
  }

  .mobile-menu__hepl-btn-indicator {
      --indicator-size: 0.75rem;
      width: var(--indicator-size);
      height: var(--indicator-size);
      background-color: var(--color-accent-green);
      border-radius: var(--radius-full)
  }

  .mobile-menu__nav-list {
      padding-bottom: .625rem
  }

  body {
      font-size: .9375rem
  }

  .page--offset {
      padding-top: calc(var(--header-height) + 1.25rem)
  }

  .button {
      --btn-height: 3.375rem;
      padding: 0 1rem;
      font-size: var(--text-sm)
  }

  .title {
      font-size: var(--text-6xl);
      line-height: 1.25
  }

  .play-button {
      --button-size: 5rem
  }

  .play-button::before {
      background-size: 1.75rem 2rem
  }

  .media-card__video::before {
      --button-size: 3.75rem;
      background-size: 2rem
  }

  .swiper-container,.shipment-list__slider {
      --slider-gap: var(--space-4)
  }

  .header {
      padding: 2.5rem 0
  }

  .header__nav {
      display: none
  }

  .header__container {
      gap: var(--space-5)
  }

  .header__action-btn {
      height: 2.375rem;
      gap: var(--space-2);
      padding: .5rem .9375rem;
      font-size: .9375rem
  }

  .header__action-btn--menu {
      width: 2.375rem;
      padding: .5rem
  }

  .header__menu-icon {
      flex: 0 0 1rem;
      width: 1rem;
      height: auto
  }

  .header__actions {
      gap: var(--space-3)
  }

  .header__action-btn-indicator {
      width: .875rem;
      height: .875rem
  }

  .hero {
      min-height: auto;
      padding: 11rem 0 7.5rem
  }

  .hero__title {
      margin: 0 0 2.25rem;
      font-size: 2.375rem;
      line-height: 1.3
  }

  .hero__description {
      max-width: 25rem;
      margin: 0 0 10.625rem;
      font-size: var(--text-md)
  }

  .hero__badge {
      margin-bottom: 1.875rem
  }

  .hero__bg {
      object-fit: cover
  }

  .hero__badge-description {
      font-size: var(--text-sm)
  }

  .hero__partner--whatsminer {
      width: 15.4375rem;
      height: auto
  }

  .hero__partner--bitmain {
      width: 10rem;
      height: auto
  }

  .hero__partner--canaan {
      width: 6.5625rem;
      height: auto
  }

  .hero__buttons {
      gap: 1.1875rem;
      margin-bottom: 3.4375rem
  }

  .hero__divider {
      max-width: 36.875rem;
      margin-bottom: 3.5rem
  }

  .hero__media {
      --image-width: 37rem
  }

  .hero__media::before {
      top: -31.5rem;
      right: -54.375rem;
      width: 132.2125rem;
      height: 92.53125rem
  }

  .hero::before,.channel::before,.projects::before,.recommends::before,.media::before,.top-miners::before,.mining-hotels::before,.catalog::before {
      top: -13.375rem;
      left: -3.375rem;
      width: 28.75rem;
      height: 80.5rem
  }

  .mining-hotels::before {
      left: -13.375rem
  }

  .catalog::before {
      top: -33rem
  }

  .hero::after {
      top: 9.125rem;
      right: 0;
      width: 32.375rem;
      height: 45.5rem;
      transform: rotate(-39deg)
  }

  .recommends::before {
      top: -12.8125rem;
      left: -20.25rem
  }

  .recommends::after,.mining-hotels::after,.catalog::after {
      top: -.9375rem;
      right: -23.375rem;
      width: 66.375rem;
      height: 66.375rem
  }

  .catalog::after {
      right: -40rem
  }

  .recommends__container {
      padding-top: 7.5rem;
      margin-bottom: 6.25rem
  }

  .recommends__content {
      flex-wrap: wrap;
      gap: var(--space-9)
  }

  .recommends__title {
      flex: 0 0 100%
  }

  .recommends__slider {
      margin-top: 7.5rem
  }

  .recommends__slide {
      max-width: 28.125rem
  }

  .miner-card__content {
      padding: 0 1.5625rem 1.875rem
  }

  .miner-card__image-wrapper {
      height: 18.125rem
  }

  .miner-card__image {
      top: -3.125rem;
      width: 20.75rem;
      height: 24.25rem
  }

  .miner-card__image--t21 {
      width: 20.75rem;
      height: 24.25rem
  }

  .miner-card__image--m60 {
      top: -9.3125rem;
      width: 27.75rem;
      height: 37.4375rem
  }

  .channel__info {
      flex: 1 0 30rem
  }

  .main-video__player {
      max-width: 30rem
  }

  .channel__sections {
      flex-direction: column;
      gap: var(--space-10);
      padding: 0
  }

  .channel__section-title {
      font-size: var(--text-2xl)
  }

  .channel__section {
      flex: initial;
      padding: 0 var(--container-padding)
  }

  .shipment-list__slider {
      overflow: visible!important
  }

  .channel__section-head {
      padding: 0
  }

  .video-card__title,.shipment-card__desc {
      font-size: var(--text-md)
  }

  .video-card__meta,.shipment-card__meta {
      margin: .4375rem 0 0
  }

  .shipment-list__slide {
      max-width: 21.875rem
  }

  .shipment-card__desc {
      margin: .75rem 0 0
  }

  .channel::before {
      left: -12.125rem
  }

  .channel::after,.media::after,.projects::after {
      top: 9.375rem;
      left: 16.25rem;
      width: 66.375rem;
      height: 66.375rem
  }

  .projects {
      padding: 7.5rem 0
  }

  .projects__container {
      grid-template-columns: 1fr
  }

  .projects__list {
      gap: var(--space-10)
  }

  .solution-card__info {
      padding: 5.0625rem 1.5625rem 6rem
  }

  .solution-card__info-image--container {
      width: 31.1875rem;
      height: 31.0625rem
  }

  .solution-card__info-image--gas {
      bottom: -5.0625rem;
      width: 41.1875rem;
      height: 28.25rem
  }

  .solution-card__info-image--cooling {
      bottom: -10.0625rem;
      width: 32.125rem;
      height: 32.125rem
  }

  .solution-card__info-image--hotel {
      bottom: -4.125rem;
      width: 36.25rem;
      height: 20.375rem
  }

  .projects__button {
      margin: 1.875rem 0 0
  }

  .solution-card+.solution-card::before {
      top: -1.25rem
  }

  .media-card {
      padding-left: 1rem
  }

  .media__description {
      max-width: 43.5rem
  }

  .media-card__photo {
      display: none
  }

  .media-card__title {
      font-size: var(--text-md)
  }

  .media-card__label {
      padding: .375rem .5625rem;
      font-size: var(--text-sm)
  }

  .media__header {
      gap: var(--space-14)
  }

  .media__footer {
      margin: 2.5rem 0 0
  }

  .top-miners__content {
      grid-template-columns: 1fr
  }

  .top-miners__container {
      padding-right: var(--container-padding-sm)
  }

  .top-miners__header {
      padding: 1.5625rem 1.5625rem 1.25rem
  }

  .top-miners__slider-wrapper,.top-miners__swiper {
      overflow: visible
  }

  .mining-hotels__sidebar {
      padding: 0
  }

  .mining-hotels__content {
      grid-template-columns: 1fr;
      gap: var(--space-10)
  }

  .mining-hotels__cards {
      gap: var(--space-4)
  }

  .hotel-card__title {
      font-size: var(--text-lg)
  }

  .hotel-card__content {
      padding: 1.375rem 1.5625rem
  }

  .hotel-card__image {
      right: -11.375rem;
      width: 43.75rem;
      height: 43.75rem
  }

  .hotel-card:nth-child(2n) .hotel-card__image {
      left: -7.6875rem
  }

  .hotel-card::before {
      width: 40.625rem;
      height: 40.625rem
  }

  .about-us {
      padding: 6rem 0 4.75rem
  }

  .about-us__cards {
      grid-template-columns: 1fr 1fr;
      margin-top: 2.625rem
  }

  .about-card__image--1 {
      bottom: -25rem
  }

  .about-card__image--2 {
      bottom: -10rem
  }

  .about-card__image--3 {
      bottom: -10rem
  }

  .about-card__image--4 {
      bottom: -14rem
  }

  .about-card {
      flex-direction: row;
      min-height: auto;
      padding: 1.875rem 1.5625rem
  }

  .about-card__title {
      margin: .625rem 0 0;
      font-size: 1.375rem
  }

  .about-card__description {
      margin: .5rem 0 0
  }

  .about-card::before {
      top: 50%;
      left: auto;
      right: -3.125rem;
      transform: translate(0,-50%);
      width: 23.75rem;
      height: 23.75rem
  }

  .miner-card--reversed .miner-card__image-wrapper {
      height: 20rem;
      min-height: 20rem
  }

  .top-miners__slide {
      width: 22.5rem
  }

  .top-miners__category-label {
      margin: 1.375rem 0 0
  }

  .miner-card--reversed .miner-card__image {
      bottom: -4.5rem;
      left: .875rem;
      width: 19.875rem;
      height: 23.25rem
  }

  .miner-card--reversed .miner-card__image--top-s21 {
      bottom: -8.0625rem;
      left: -2.25rem;
      width: 33.25rem;
      height: 33.25rem
  }

  .miner-card--reversed .miner-card__image--top-m60 {
      bottom: -9.125rem;
      left: -1.5625rem;
      width: 36.8125rem;
      height: 31.0625rem
  }

  .footer {
      padding: 7.5rem 0
  }

  .footer__wrapper {
      grid-template-columns: 1fr;
      gap: 5rem
  }

  .footer__card {
      padding: 3.125rem 2.5rem
  }

  .footer__title {
      margin: 0 0 .75rem;
      font-size: var(--text-lg)
  }

  .footer__menu-link {
      font-size: .9375rem
  }

  .footer__nav {
      grid-template-columns: repeat(3,1fr);
      margin: 3.75rem 0 0;
      gap: var(--space-14) 2.5rem
  }

  .footer__contacts {
      gap: var(--space-12);
      padding: 0 0 0
  }

  .footer__contact-title,.footer__requisites-title {
      margin: 0 0 1.875rem;
      font-size: var(--text-lg)
  }

  .footer__contact-item,.footer__requisites-item {
      font-size: .9375rem
  }

  .footer::after {
      top: -25rem;
      right: -25rem;
      width: 58.125rem;
      height: 58.125rem
  }

  .footer::before {
      top: -25rem;
      left: -12.5rem;
      width: 28.75rem;
      height: 80.5rem
  }

  .special-offer__image {
      top: -.5rem;
      right: -1.125rem;
      width: 30.875rem;
      height: 27.0625rem
  }

  .special-offer__title {
      margin: 0 0 .625rem;
      font-size: var(--text-2xl)
  }

  .catalog__title {
      font-size: 2.25rem
  }

  .catalog__count {
      font-size: var(--text-xl)
  }

  .categories {
      margin: 3.125rem 0 0
  }

  .catalog__grid {
      gap: var(--space-3);
      margin: 4.375rem 0 0
  }

  .product-card {
      padding: 1.25rem .875rem 1rem
  }

  .product-card__content {
      padding: 0
  }

  .product-card__actions {
      top: 1.25rem;
      left: .875rem
  }

  .product-card__profit-strip,.product-info__badge.in-cart {
      right: .875rem
  }

  .product-card__image-wrapper {
      top: -1.875rem;
      left: 1.25rem;
      height: 15.625rem
  }

  .product-card__image {
      height: 20.625rem
  }

  .product-card__hashrate,.product-card__price {
      font-size: var(--text-sm)
  }

  .catalog__header {
      gap: var(--space-1-5) 1.25rem
  }

  .product {
      --product-grid-gap: var(--space-4);
      --product-card-border-radius: var(--radius-3xl)
  }

  .product-info {
      flex-wrap: wrap;
      gap: var(--space-5)
  }

  .product-info__col--left {
      flex: 0 1 calc(100% - 21.875rem - 1.25rem)
  }

  .product-info__col--right {
      flex: 0 0 100%
  }

  .product-info__image-wrapper {
      flex: 0 0 21.875rem;
      width: 21.875rem;
      margin: 0
  }

  .product-info__badge {
      padding: .5rem 1.25rem;
      margin: 0 0 .6875rem;
      font-size: var(--text-base)
  }

  .product-info__badge.nobuy.in-cart {
      padding-right: 1.25rem
  }

  .product-info__title,.product-purchase__price {
      font-size: var(--text-4xl)
  }

  .product-info__hashrates {
      gap: var(--space-2-5);
      margin: 1.25rem 0 0
  }

  .product-info__hashrate {
      height: 2.375rem;
      padding: .5625rem 1.25rem;
      font-size: var(--text-base)
  }

  .product-info__specs {
      gap: var(--space-5);
      margin: 1.875rem 0 0
  }

  .product-purchase__installment-title,.product-purchase__installment-step {
      font-size: .9375rem
  }

  .product-purchase__profit {
      margin-left: 1.25rem
  }

  .product-purchase__manager-btn {
      margin-top: 1.625rem
  }

  .product__body {
      grid-template-columns: 1fr;
      margin: 3.75rem 0rem 0
  }

  .product__body-left {
      display: grid;
      grid-template-columns: repeat(2,1fr);
      grid-template-rows: auto 1fr;
      grid-template-areas: "gallery form""guarantee form"
  }

  .product__gallery {
      grid-area: gallery;
      padding: 1rem 1.25rem
  }

  .product-form {
      grid-area: form
  }

  .product-guarantee {
      grid-area: guarantee
  }

  .product-guarantee__days {
      font-size: 1.625rem
  }

  .product-guarantee__content {
      gap: var(--space-8)
  }

  .product-guarantee__feature-text {
      font-size: var(--text-sm)
  }

  .product-guarantee__desc {
      font-size: var(--text-sm);
      margin: 1.25rem 0 0
  }

  .product-form__label {
      font-size: var(--text-xl)
  }

  .product-form__manager {
      margin: 1.25rem 0 0
  }

  .product-purchase__installment,.product-guarantee,.product-form__container,.delivery-block,.product__middle,.reviews,.expert-opinion,.product-item {
      padding: 1.875rem 1.5625rem
  }

  .product-guarantee__days {
      font-size: var(--text-xl)
  }

  .product-gallery__nav {
      display: none
  }

  .delivery-block__title {
      font-size: 1.625rem
  }

  .delivery-block__map::before {
      display: none
  }

  .expert-opinion__button {
      --btn-height: 3.375rem
  }

  .delivery-block__map {
      --map-size: 52.1875rem 38.4375rem;
      --top-pos: -3.25rem;
      --right-pos: -12.4375rem
  }

  .product__middle {
      gap: var(--space-5)
  }

  .product-gallery__title,.product-description__title,.product-description h2,.seo-text h2 {
      font-size: var(--text-xl);
      margin: 0 0 1.25rem
  }

  .product-description h3,.seo-text h3 {
      font-size: var(--text-lg);
      margin: 0 0 1.125rem
  }

  .product-description p,.product-description li,.product-description h4 {
      font-size: var(--text-sm)
  }

  .product-description__row {
      gap: var(--space-8)
  }

  .product-gallery--middle {
      --gallery-img-border-radius: 0.75rem;
      --gallery-img-size: 6.25rem;
      --swiper-slide-offset: 0.625rem;
      padding: 1rem
  }

  .product__footer {
      grid-template-columns: 1fr
  }

  .reviews__card {
      grid-template-columns: 1fr;
      gap: var(--space-8)
  }

  .reviews__header {
      margin-bottom: 1.5625rem
  }

  .reviews__name {
      font-size: var(--text-md)
  }

  .reviews__user-rating,.reviews__text,.reviews__read-more,.reviews__pros-text,.reviews__cons-text,.reviews__pros-title,.reviews__cons-title {
      font-size: var(--text-sm)
  }

  .reviews__user-rating-icon {
      --icon-size: 0.75rem;
      position: relative;
      top: -.0625rem
  }

  .reviews__pros-cons {
      gap: var(--space-4)
  }

  .reviews__rating {
      padding: 1rem 1rem 1.25rem
  }

  .reviews__rating-value {
      gap: var(--space-3);
      font-size: var(--text-6xl)
  }

  .reviews__rating-icon {
      --icon-size: 1.875rem
  }

  .reviews__rating-label {
      font-size: var(--text-sm)
  }

  .reviews__rating-particular-value {
      font-size: var(--text-base)
  }

  .reviews__rating-particular {
      margin: 1rem 0 0
  }

  .reviews__rating-particular-title {
      font-size: var(--text-sm)
  }

  .expert-opinion__title,.expert-opinion__subtitle {
      font-size: 1.625rem
  }

  .expert-opinion__stats {
      gap: var(--space-3)
  }

  .expert-opinion__text {
      margin: .75rem 0 0;
      font-size: var(--text-sm)
  }

  .expert-opinion__footer {
      margin-top: 1.25rem
  }

  .expert-opinion {
      gap: var(--space-4)
  }

  .expert-opinion__header,.expert-opinion__footer {
      flex-direction: column;
      align-items: stretch
  }

  .expert-opinion__button {
      max-width: 100%
  }

  .expert-opinion__stats {
      align-items: flex-start;
      margin: 0
  }

  .product::before {
      top: -43.375rem;
      left: -7.375rem;
      width: 33.75rem;
      height: 80.5rem
  }

  .product::after {
      top: -20.9375rem;
      right: -53.375rem;
      width: 66.375rem;
      height: 66.375rem
  }

  .product__gallery {
      -ms-grid-row: 1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 1;
      -ms-grid-row-span: 2;
      -ms-grid-column: 2
  }

  .product-guarantee {
      -ms-grid-row: 2;
      -ms-grid-column: 1
  }

  .product-guarantee__features {
      gap: var(--space-4)
  }

  .product-guarantee__feature {
      gap: var(--space-2)
  }

  .product-guarantee__feature-icon {
      height: 1.25rem
  }

  .product-guarantee__feature-icon--wrench {
      width: 1.125rem;
      height: 1.25rem
  }

  .product-guarantee__feature-icon--handshake {
      width: 1.5rem;
      height: 1.25rem
  }

  .product-item {
      font-size: var(--text-sm)
  }

  .product-item__price,.product-item__price-new {
      font-size: var(--text-xl)
  }

  .product-item__price-old {
      margin: .375rem 0 0;
      font-size: .9375rem
  }

  .product-item__card-btn {
      --btn-height: 2.25rem;
      gap: var(--space-1-5);
      margin: .75rem 0 0;
      padding: 0 .875rem;
      font-size: var(--text-xs)
  }

  .product__gallery {
      -ms-grid-row: 1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 1;
      -ms-grid-row-span: 2;
      -ms-grid-column: 2
  }

  .product-guarantee {
      -ms-grid-row: 2;
      -ms-grid-column: 1
  }

  .form {
      --field-height: 2.625rem;
      margin: 1.25rem 0 0
  }

  .form__input-group .select {
      padding: 0 .5rem 0 .625rem
  }

  .checkbox__label {
      font-size: var(--text-base)
  }

  .select__current {
      font-size: var(--text-sm)
  }

  .form__submit,.form__row--checkbox {
      margin-top: .375rem
  }

  .person-info {
      --expert-image-size: 3.75rem;
      gap: var(--space-2-5)
  }

  .price-table {
      --table-x-padding: 1rem;
      --table-row-offset: 0.3125rem
  }

  .price-table table.price-table__table>thead>tr>th,.price-table table.price-table__table>tbody>tr>td,.price-table__filter .checkbox__label {
      font-size: var(--text-base)
  }

  .price-table__delivery-icon {
      --delivery-icon-size: 1.25rem
  }

  .price-table__action-btn {
      padding: .625rem 1.25rem
  }

  .price-table__action {
      width: 3.125rem!important
  }

  .price-table__show-more {
      font-size: var(--text-base)
  }

  .price-table__show-more svg {
      --icon-size: 0.75rem
  }

  .tg-banner {
      padding: 0 0 3.75rem;
      margin: 0 0 3.75rem
  }

  .tg-banner__subtitle {
      font-size: .9375rem
  }

  .tg-banner__title {
      font-size: var(--text-2xl)
  }

  .blog__title {
      font-size: var(--text-4xl)
  }

  .blog__title-icon {
      top: -.1875rem;
      --icon-size: 1.5rem
  }

  .blog__search-input {
      width: 25rem
  }

  .blog__slider {
      --slider-gap: var(--space-4)
  }

  .blog-card {
      padding: 1rem;
      border-radius: var(--radius-3xl)
  }

  .blog-card__meta {
      flex-wrap: wrap;
      gap: var(--space-2-5)
  }

  .blog-card__image-wrapper {
      border-radius: var(--radius-xl)
  }

  .blog-card__inner,.blog-card__content {
      gap: var(--space-4);
      min-height: auto
  }

  .blog-card--product .blog-card__inner {
      min-height: auto
  }

  .blog-card__date,.blog-card__tag-inner {
      font-size: var(--text-sm)
  }

  .blog-card__title {
      font-size: var(--text-xl)
  }

  .blog-card__desc {
      font-size: var(--text-md)
  }

  .blog__accent-text {
      text-align: initial;
      font-size: var(--text-lg)
  }

  .blog-categories {
      --category-height: 2.75rem;
      margin: 0 0 3.75rem
  }

  .blog-categories__list {
      gap: var(--space-4)
  }

  .blog-categories__item {
      gap: var(--space-2-5);
      padding: 0 .9375rem;
      font-size: var(--text-md)
  }

  .blog-categories__item-icon {
      --icon-size: 1.75rem
  }

  .blog__more {
      padding: 0 2.5rem;
      margin: 5rem 0 0
  }

  .blog--grid-single {
      margin-top: 5rem
  }

  .article {
      --sidebar-width: 12.5rem;
      margin: 1rem 0 3rem
  }

  .article::before {
      top: -16.8125rem;
      left: -40.25rem
  }

  .article::after {
      top: -.9375rem;
      right: -23.375rem;
      width: 66.375rem;
      height: 66.375rem
  }

  .article__title {
      font-size: 1.875em
  }

  .article__header {
      margin: 2.5rem 0
  }

  .article__body {
      font-size: var(--text-md)
  }

  .article__meta {
      gap: var(--space-2);
      padding-top: 0;
      padding-right: 1rem;
      font-size: var(--text-base)
  }

  .article__body h1 {
      font-size: 2em;
      margin: 1.5em 0 .7em 0
  }

  .article__body h2 {
      font-size: 1.5em;
      margin: 1.5em 0 1em 0
  }

  .article__body h3 {
      font-size: 1.2em;
      margin: 1em 0 .75em 0
  }

  .product-card__spec {
      font-size: var(--text-base)
  }

  .product-card__coins,.product-card__spec-value {
      margin: .125rem 0 0
  }

  .product-card__coin-icon {
      --coins-size: 0.875rem
  }

  .product-card__coin-icon+.product-card__coin {
      margin-left: .1875rem
  }

  .product-card__specs {
      margin: 1rem 0 0
  }

  .calc-header__container {
      gap: var(--space-9)
  }

  .calc-single__title,.calc-header__title {
      font-size: 2.25rem
  }

  .calc-header__description {
      font-size: var(--text-md)
  }

  .calc-single__table th,.calc-single__table td {
      padding: .625rem .3125rem;
      font-size: var(--text-base)
  }

  .calc-single__table th:first-child,.calc-single__table td:first-child {
      padding-left: 1rem
  }

  .calc-single__table th:last-child,.calc-single__table td:last-child {
      padding-right: 1rem
  }

  .calc-single__manufacturer {
      padding: .625rem 0 0
  }

  .calc-single__manufacturer-icon {
      height: 1.625rem
  }
}

@media (max-width: 1500px) {
  .product__gallery {
      -ms-grid-row:1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 1;
      -ms-grid-row-span: 2;
      -ms-grid-column: 2
  }

  .product-guarantee {
      -ms-grid-row: 2;
      -ms-grid-column: 1
  }
}

@media (min-width: 1200px) and (max-width:1500px) {
  .calc-single__help-button {
      padding:.625rem 1.25rem
  }
}

@media (max-width: 479px) {
  .mobile-menu {
      max-width:100%
  }

  .electricity-price-input-wrapper {
      min-width: 100px;
      padding: .1rem .3rem
  }

  .electricity-price-input {
      font-size: .7rem;
      padding: .1rem .15rem
  }

  .electricity-price-unit {
      font-size: .6rem;
      margin-left: .1rem
  }

  .video-list {
      grid-template-columns: 1fr
  }

  .about-us__cards {
      grid-template-columns: 1fr
  }

  .footer__nav,.footer__contact-list {
      grid-template-columns: 1fr
  }

  .about-card__image--2 {
      left: 58%
  }

  .special-offer__image {
      display: block;
      position: static;
      width: 15.625rem;
      height: 13.6875rem;
      margin: 0 auto .625rem
  }

  .categories {
      display: grid;
      grid-template-columns: repeat(2,1fr)
  }

  .categories__item {
      justify-content: center;
      height: 3.125rem;
      text-align: center
  }

  .price-table__filters {
      justify-content: space-between;
      gap: 0
  }

  .price-table__filter {
      flex: 0 0 48%
  }

  .electricity-price-input-wrapper {
      min-width: 100px;
      padding: .1rem .3rem
  }

  .electricity-price-input {
      font-size: .7rem;
      padding: .1rem .15rem
  }

  .electricity-price-unit {
      font-size: .6rem;
      margin-left: .1rem
  }
}

@media (max-width: 1199px) {
  .catalog__grid {
      grid-template-columns:repeat(2,1fr)
  }
}

@media (max-width: 991px) {
  .hero__description {
      margin:0 0 15.625rem
  }

  .nomobile {
      display: none
  }

  .hero__bg {
      bottom: 1.25rem
  }

  .hero::after {
      display: none
  }

  .main-video {
      flex-direction: column;
      gap: var(--space-3-5)
  }

  .main-video__player-wrapper {
      flex: initial
  }

  .main-video__views {
      margin: .375rem 0 0
  }

  .main-video__desc {
      margin: .5rem 0 0
  }

  .solution-card {
      grid-template-columns: 1fr
  }

  .solution-card__images {
      gap: var(--space-5)
  }

  .solution-card__info-image--cooling {
      right: -9.375rem
  }

  .media-card__video {
      width: 16.875rem
  }

  .media__header {
      flex-direction: column;
      gap: var(--space-5)
  }

  .hotel-card__image {
      right: -14.5rem;
      width: 37.5rem;
      height: 37.5rem
  }

  .hotel-card:nth-child(2n) .hotel-card__image {
      left: -10.6875rem
  }

  .footer__nav {
      gap: var(--space-10) 1.25rem
  }

  .footer__card {
      padding: 2.5rem 1.875rem
  }

  .special-offer__description {
      max-width: 25rem
  }

  .pagination {
      flex-direction: column-reverse;
      gap: 0
  }

  .pagination-wrapper {
      margin: 0 0 1rem 0
  }

  .product-cards {
      grid-template-columns: 1fr
  }

  .blog__header {
      flex-wrap: wrap;
      margin: 0 0 1.25rem;
      gap: var(--space-5) 2rem
  }

  .blog__search {
      flex: 1 1 50%
  }

  .blog__search-input {
      width: 100%
  }

  .blog__grid {
      --blog-grid-cols: 2
  }

  .article__title {
      font-size: 1.375em
  }

  .number-control {
      display: inline-flex;
      width: auto
  }
}

@media (max-width: 767px) {
  body {
      font-size:var(--text-sm)
  }

  .page--offset {
      padding-top: calc(var(--header-height) + 1.625rem);
  }

  .button {
      --btn-height: 2.75rem;
      font-size: var(--text-xs)
  }

  .title {
      font-size: var(--text-3xl)
  }

  .header {
      padding: 1.5625rem 0
  }

  .header.scrolled {
      padding: .9375rem 0
  }

  .header__action-btn--menu {
      display: flex
  }

  .nomobile {
      display: none
  }

  .header__logo-img {
      width: 12rem;
      height: 1.4375rem
  }

  .hero {
      padding: 6.25rem 0 3.75rem
  }

  .hero__title {
      margin: 0 0 1.75rem;
      font-size: var(--text-3xl)
  }

  .hero__description {
      max-width: 23.125rem;
      font-size: var(--text-sm);
      margin: 0 0 13.75rem
  }

  .hero__badge-description {
      font-size: var(--text-xs)
  }

  .hero__partners {
      justify-content: center;
      gap: 1.5625rem
  }

  .hero__partner--whatsminer {
      width: 35%
  }

  .hero__partner--bitmain {
      width: 21%
  }

  .hero__partner--canaan {
      width: 21%
  }

  .hero__buttons {
      gap: var(--space-3-5);
      margin-bottom: 2.5rem
  }

  .hero__divider {
      max-width: 100%;
      margin-bottom: 2.5rem
  }

  .hero::after {
      display: none
  }

  .recommends__container {
      padding-top: 3.75rem;
      margin: 0 0 3.75rem
  }

  .recommends__expert {
      gap: var(--space-2)
  }

  .recommends__expert-image {
      --expert-image-size: 4.125rem
  }

  .recommends__content {
      gap: var(--space-5)
  }

  .recommends__content-body {
      flex: 0 0 100%
  }

  .slider-navigation__button {
      --recommends-button-size: 3.125rem;
      --recommends-button-icon-size: 1.125rem
  }

  .recommends__slide {
      max-width: 20.625rem
  }

  .recommends__slider {
      margin-top: 5rem;
      padding-bottom: 1.5625rem
  }

  .miner-card__content {
      padding: 0 .9375rem 1.25rem
  }

  .miner-card__rating {
      top: 1rem;
      left: .9375rem
  }

  .miner-card__image-wrapper {
      height: 13.75rem
  }

  .miner-card__image {
      top: -2.375rem;
      width: 15rem;
      height: 17.5rem
  }

  .miner-card__image--t21 {
      width: 15rem;
      height: 17.5rem
  }

  .miner-card__image--m60 {
      top: -6.75rem;
      width: 20rem;
      height: 27rem
  }

  .miner-card__model {
      margin: .4375rem 0 0;
      font-size: var(--text-xl)
  }

  .miner-card__brand,.miner-card__price,.miner-card__description {
      font-size: var(--text-sm)
  }

  .miner-card__description {
      margin: .5rem 0 0
  }

  .miner-card__price {
      padding: .5625rem .9375rem .4375rem;
      margin: 1rem 0 0
  }

  .label,.recommends__badge {
      padding: .5rem .9375rem;
      font-size: var(--text-sm)
  }

  .recommends::after,.mining-hotels::after,.catalog::after {
      top: auto;
      bottom: 6.25rem;
      right: auto;
      left: 11.25rem;
      width: 46.25rem;
      height: 46.25rem
  }

  .miner-card__rating {
      gap: var(--space-1-5)
  }

  .miner-card__rating-value {
      top: .1875rem;
      font-size: var(--text-sm)
  }

  .miner-card__star {
      --icon-size: 1.125rem
  }

  .channel {
      padding: 5rem 0 5.625rem
  }

  .channel__content {
      padding: 0
  }

  .channel__logo {
      --channel-logo-size: 5rem
  }

  .channel__sections {
      gap: var(--space-6)
  }

  .channel__title {
      margin: .625rem 0 0;
      font-size: var(--text-4xl)
  }

  .channel__content {
      font-size: var(--text-sm)
  }

  .main-video__desc {
      font-size: var(--text-sm)
  }

  .video-card__title,.shipment-card__desc {
      font-size: var(--text-base)
  }

  .menu-search-suggestions__text {
      flex-direction: column;
      align-items: end
  }

  .menu-search-suggestions__price {
      padding: .2rem .5rem;
      margin-top: .3rem;
      font-size: .7rem
  }

  .menu-search-suggestions__link {
      padding: .5rem
  }

  .video-card__meta,.shipment-card__meta {
      margin: .25rem 0 0;
      font-size: var(--text-xs)
  }

  .video-list {
      gap: var(--space-5) 1rem
  }

  .shipment-list__slide {
      max-width: 16.25rem
  }

  .channel__section-title {
      font-size: var(--text-xl);
      gap: var(--space-1)
  }

  .channel__section-title-icon {
      --icon-size: 1.625rem
  }

  .channel__section-head {
      flex-direction: column;
      align-items: start
  }

  .swiper-horizontal>.swiper-scrollbar.channel__section-head-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal.channel__section-head-scrollbar {
      width: 100%
  }

  .shipment-list {
      margin: 1.25rem 0 0
  }

  .channel__sections::after {
      top: calc(100% + 1.875rem)
  }

  .channel::after,.media::after,.projects::after {
      top: 14.375rem;
      left: 15rem;
      width: 53.125rem;
      height: 53.125rem
  }

  .main-video__title {
      font-size: var(--text-base)
  }

  .projects {
      padding: 3.75rem 0
  }

  .projects__container {
      gap: var(--space-10)
  }

  .solution-card,.solution-card__images {
      gap: var(--space-3)
  }

  .solution-card__info {
      padding: 1.5625rem .9375rem 1.875rem
  }

  .solution-card__info-image--container {
      bottom: -1.875rem;
      right: -4.375rem;
      width: 16.25rem;
      height: 16.1875rem
  }

  .solution-card__info-image--gas {
      right: -8.125rem;
      bottom: -1.9375rem;
      width: 20.9375rem;
      height: 14.375rem
  }

  .solution-card__info-image--cooling {
      bottom: -6.0625rem;
      right: -7.5rem;
      width: 19.25rem;
      height: 19.25rem
  }

  .solution-card__info-image--hotel {
      bottom: -2.75rem;
      right: -6.625rem;
      width: 21.875rem;
      height: 12.3125rem
  }

  .solution-card__tag {
      padding: .1875rem .5625rem .125rem;
      font-size: var(--text-sm)
  }

  .solution-card__title {
      margin: .625rem 0 0;
      font-size: var(--text-lg)
  }

  .solution-card__desc {
      margin: .5rem 0 0;
      font-size: var(--text-xs)
  }

  .solution-card__image {
      border-radius: var(--radius-lg)
  }

  .projects__list {
      gap: var(--space-8)
  }

  .solution-card+.solution-card::before {
      top: -.9375rem
  }

  .media {
      padding: 3.75rem 0
  }

  .media-list {
      gap: var(--space-4);
      margin: 1.875rem 0 0rem
  }

  .media__header {
      gap: var(--space-3)
  }

  .media-card__video,.media-card__video-preview {
      border-radius: var(--radius-2xl)
  }

  .media__footer {
      margin: 1rem 0 0
  }

  .mining-hotels {
      padding: 3.75rem 0
  }

  .mining-hotels__content {
      gap: var(--space-8)
  }

  .mining-hotels__buttons {
      margin: 1.25rem 0 0;
      gap: var(--space-3-5)
  }

  .hotel-card__content {
      flex: 0 0 100%;
      padding: .875rem .9375rem
  }

  .hotel-card__title {
      margin: .75rem 0 0
  }

  .hotel-card__description {
      margin: .5rem 0 0
  }

  .hotel-card__features {
      margin: .875rem 0 0
  }

  .hotel-card__image {
      right: -12rem;
      width: 33.125rem;
      height: 33.125rem;
      opacity: .5
  }

  .hotel-card:nth-child(2n) .hotel-card__image {
      left: auto;
      right: -10.125rem
  }

  .hotel-card:nth-child(2) .hotel-card__image {
      top: 27%;
      right: -8.875rem;
      width: 34.375rem;
      height: 34.375rem
  }

  .hotel-card::before {
      display: none
  }

  .about-us {
      padding: 3.75rem 0
  }

  .about-us__cards {
      gap: var(--space-4);
      margin-top: 1.5625rem
  }

  .about-card {
      flex-direction: column;
      padding: 1.125rem .9375rem
  }

  .about-card__title {
      margin: .625rem 0 0;
      font-size: 1.375rem
  }

  .about-card::before {
      top: 68%;
      left: 50%;
      right: auto;
      transform: translate(-50%,-50%);
      width: 15rem;
      height: 15rem
  }

  .about-card__description,.about-card__tag {
      font-size: var(--text-sm)
  }

  .about-card__title {
      font-size: var(--text-xl);
      line-height: 1.2
  }

  .about-card__image-wrapper {
      min-height: 15rem
  }

  .about-card__image--1 {
      bottom: -8.5rem;
      left: 60%;
      width: 18.75rem;
      height: 24.125rem
  }

  .about-card__image--2 {
      bottom: -3.0625rem;
      left: 52%;
      width: 29.8125rem;
      height: 18.1875rem
  }

  .about-card__image--3 {
      bottom: -1.875rem;
      left: 50%;
      width: 25.875rem;
      height: 15.6875rem
  }

  .about-card__image--4 {
      bottom: -.4375rem;
      left: 50%;
      width: 15.625rem;
      height: 15.6875rem
  }

  .top-miners {
      padding: 3.75rem 0
  }

  .top-miners__category-tab,.top-miners__subcategory {
      padding: .5rem .9375rem;
      border-radius: 2.5rem
  }

  .top-miners__content {
      gap: var(--space-4)
  }

  .top-miners__category-tabs,.top-miners__subcategories {
      gap: var(--space-2)
  }

  .top-miners__category-tabs {
      margin: 1rem 0 0
  }

  .top-miners__subcategories {
      margin: .9375rem 0 0
  }

  .top-miners__navigation,.top-miners__description {
      margin: 1.875rem 0 0
  }

  .top-miners__header {
      padding: 1.375rem .9375rem
  }

  .top-miners__slide {
      width: 20rem
  }

  .miner-card--reversed .miner-card__image-wrapper {
      height: 16rem;
      min-height: 16rem
  }

  .miner-card--reversed .miner-card__image {
      bottom: -4.875rem;
      left: 0rem;
      width: 20.625rem;
      height: 20.625rem
  }

  .miner-card--reversed .miner-card__image--top-s21 {
      bottom: -6.375rem;
      left: -1.75rem;
      width: 26.5625rem;
      height: 26.5625rem
  }

  .miner-card--reversed .miner-card__image--top-m60 {
      bottom: -6rem;
      left: -.9375rem;
      width: 29.4375rem;
      height: 24.8125rem
  }

  .miner-card--reversed .miner-card__content {
      padding: 1.25rem .9375rem 0
  }

  .footer {
      padding: 3.75rem 0
  }

  .footer__logo-img {
      width: 12rem;
      height: 1.5625rem
  }

  .footer__nav {
      grid-template-columns: repeat(2,1fr);
      margin: 1.875rem 0 0;
      gap: 1.375rem .9375rem
  }

  .footer__column {
      gap: var(--space-2-5)
  }

  .footer__title {
      margin: 0;
      font-size: var(--text-md)
  }

  .footer__menu-link {
      font-size: var(--text-base)
  }

  .footer__card {
      padding: 1.375rem .9375rem
  }

  .footer__contact-title,.footer__requisites-title {
      margin: 0 0 1.25rem;
      font-size: var(--text-md)
  }

  .footer__contact-item,.footer__requisites-item {
      font-size: var(--text-base)
  }

  .footer__contacts {
      gap: var(--space-8)
  }

  .footer__contact-list {
      grid-template-columns: 1fr 1fr;
      gap: var(--space-5) 5rem
  }

  .footer__wrapper {
      gap: var(--space-12)
  }

  .special-offer__card {
      padding: 1rem .9375rem;
      border-radius: var(--radius-2xl)
  }

  .special-offer__content {
      gap: var(--space-4)
  }

  .special-offer__close {
      --close-icon-size: 1.125rem;
      --close-icon-offset: 0.9375rem
  }

  .special-offer__description {
      max-width: 22.8125rem
  }

  .special-offer__title {
      font-size: var(--text-xl)
  }

  .special-offer__social-link {
      --social-icon-size: 2.125rem
  }

  .special-offer__social-icon {
      --icon-size-x: 1.125rem;
      --icon-size-y: 1.125rem
  }

  .special-offer__social-icon--telegram {
      --icon-size-x: 1rem
  }

  .special-offer__image {
      top: -.5rem;
      right: -.5rem;
      width: 25.25rem;
      height: 22.125rem
  }

  .breadcrumbs__list {
      gap: var(--space-1-5) .625rem;
      font-size: var(--text-sm)
  }

  .breadcrumbs__separator {
      flex: 0 0 .3125rem;
      width: .3125rem;
      height: .5rem
  }

  .catalog__header {
      gap: var(--space-1-5) .875rem
  }

  .catalog__title {
      font-size: 1.6875rem
  }

  .catalog__count {
      font-size: .9375rem
  }

  .filters,.filters__controls,.filters__active,.filters__list {
      gap: var(--space-2)
  }

  .filters__sort-btn,.filters__toggle-btn,.filters__tag,.filters__item,.categories__item {
      padding: .5rem .75rem;
      font-size: var(--text-sm);
      gap: var(--space-1-5);
      border-radius: var(--radius-lg)
  }

  .catalog__grid {
      grid-template-columns: 1fr;
      gap: var(--space-4);
      margin: 2.5rem 0 0
  }

  .product-card__profit-strip {
      font-size: .7rem;
      top: 1rem
  }

  .product-info__badge.in-cart {
      font-size: .7rem;
      top: 2.5rem
  }

  .product-card {
      padding: 1rem .9375rem 1.125rem;
      border-radius: var(--radius-2xl)
  }

  .product-card__actions {
      top: 1rem;
      left: .9375rem
  }

  .product-card__image-wrapper {
      top: -1.5rem;
      left: .9375rem;
      height: 13.75rem
  }

  .product-card__image {
      height: 16.875rem
  }

  .product-card__model {
      font-size: var(--text-xl);
      margin: .375rem 0 0
  }

  .product-card__description {
      padding: 0;
      font-size: var(--text-sm);
      margin: .625rem 0 0
  }

  .product-card__specs,.product-card__row {
      margin: .75rem 0 0
  }

  .categories {
      margin: 2.5rem 0 0
  }

  .filters {
      margin: 1.875rem 0 0
  }

  .electricity-price-input-wrapper {
      min-width: 120px;
      padding: .15rem .4rem
  }

  .electricity-price-input {
      font-size: var(--text-xs);
      padding: .15rem .2rem
  }

  .electricity-price-unit {
      font-size: .65rem;
      margin-left: .15rem
  }

  .electricity-price-input-wrapper {
      min-width: 120px;
      padding: .15rem .4rem
  }

  .electricity-price-input {
      font-size: var(--text-xs);
      padding: .15rem .2rem
  }

  .electricity-price-unit {
      font-size: .65rem;
      margin-left: .15rem
  }

  .usd-rate-input-wrapper {
      min-width: 100px;
      padding: .15rem .4rem
  }

  .usd-rate-input {
      font-size: var(--text-xs);
      padding: .15rem .2rem
  }

  .usd-rate-unit {
      font-size: .65rem;
      margin-left: .15rem
  }

  .product {
      --product-card-border-radius: 0.875rem
  }

  .product::before {
      left: -12.25rem
  }

  .product::after {
      top: 9.0625rem;
      right: -33.375rem;
      width: 46.25rem;
      height: 46.25rem
  }

  .product-info {
      position: relative
  }

  .product-purchase__installment,.product-guarantee,.product-form__container,.delivery-block,.product__middle,.reviews,.expert-opinion,.product-item {
      padding: 1.25rem var(--container-padding)
  }

  .yavidget iframe {
      width: 100%!important;
      min-width: 100%!important
  }

  .product__gallery {
      padding: var(--container-padding)
  }

  .product-info__col--left {
      flex: 0 0 100%;
      margin-top: 1.25rem
  }

  .product-info__badge {
      position: absolute;
      top: 0;
      left: 0
  }

  .product-info__image-wrapper {
      flex: 0 0 100%;
      width: 100%;
      margin: 0 auto
  }

  .product-info__image-cont {
      position: absolute;
      display: none
  }

  .product-info__badge {
      padding: .4375rem .875rem;
      margin: 0;
      font-size: var(--text-sm);
      top: -24rem
  }

  .product-info__title,.product-purchase__price {
      font-size: var(--text-2xl)
  }

  .product-info__hashrate {
      height: 1.875rem;
      padding: .4375rem .875rem;
      font-size: var(--text-sm)
  }

  .product-info__specs {
      gap: var(--space-2-5);
      margin: 1.25rem 0 0
  }

  .product-info__spec-value,.product-info__spec-name {
      font-size: var(--text-base)
  }

  .product-purchase__installment-title,.product-purchase__installment-step {
      font-size: var(--text-base)
  }

  .product-purchase__price-row {
      flex-direction: column;
      align-items: start
  }

  .product-purchase__profit {
      width: 100%;
      margin: .625rem 0 0
  }

  .product-purchase {
      padding: 0
  }

  .product-purchase__installment {
      margin-top: 1.25rem
  }

  .product-purchase__installment-title,.product-purchase__installment-step {
      font-size: var(--text-sm)
  }

  .product-purchase__installment-step::before {
      height: .3125rem
  }

  .product__body-left {
      grid-template-columns: 1fr;
      grid-template-rows: initial;
      grid-template-areas: "gallery""form""guarantee"
  }

  .product__body {
      margin: 2.5rem 0rem 0
  }

  .expert-opinion__button {
      --btn-height: 2.75rem
  }

  .product-purchase__manager-btn {
      margin-top: 1rem
  }

  .delivery-block__map {
      --map-size: 41.75rem 30.75rem;
      --top-pos: -2rem;
      --right-pos: -10.5625rem
  }

  .delivery-block__title {
      font-size: var(--text-xl)
  }

  .product-description__row {
      grid-template-columns: 1fr;
      gap: var(--space-5)
  }

  .product-gallery--middle {
      --gallery-img-border-radius: 0.625rem;
      --gallery-img-size: 4.6875rem
  }

  .expert-opinion__person {
      --expert-image-size: 3.25rem
  }

  .expert-opinion__footer {
      margin: .5rem 0 0
  }

  .product__head-rating {
      gap: var(--space-2-5);
      font-size: .6875rem
  }

  .product__head-rating-icon {
      --icon-size: 1.25rem
  }

  .product__action-compare-icon {
      --icon-size: 0.9375rem
  }

  .product__action-whish-icon {
      flex: 0 0 1.125rem;
      width: 1.125rem;
      height: .9375rem
  }

  .product__gallery {
      -ms-grid-row: 1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      -ms-grid-column: 1
  }

  .product-guarantee {
      -ms-grid-row: 3;
      -ms-grid-column: 1
  }

  .product__gallery {
      -ms-grid-row: 1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      -ms-grid-column: 1
  }

  .product-guarantee {
      -ms-grid-row: 3;
      -ms-grid-column: 1
  }

  .product__gallery {
      -ms-grid-row: 1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      -ms-grid-column: 1
  }

  .product-guarantee {
      -ms-grid-row: 3;
      -ms-grid-column: 1
  }

  .form {
      gap: var(--space-2-5)
  }

  .select__icon svg {
      --icon-size: 1rem
  }

  .price-table {
      --table-x-padding: var(--container-padding);
      --table-row-offset: 0
  }

  .price-table__filters {
      justify-content: space-evenly
  }

  .price-table table,.price-table table thead,.price-table table tbody tr {
      display: block;
      margin-bottom: 1rem
  }

  .price-table table.price-table__table>thead>tr>th {
      display: none
  }

  .price-table thead tr {
      display: flex;
      flex-direction: column;
      width: 100%
  }

  .price-table th.price-table__delivery,.price-table th.price-table__action {
      display: none
  }

  .price-table thead tr th {
      display: flex;
      justify-content: center;
      width: 100%!important;
      padding: .625rem var(--table-x-padding)!important;
      -webkit-box-sizing: border-box;
      box-sizing: border-box
  }

  .price-table table.price-table__table>tbody>tr>td {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%!important;
      padding-left: var(--table-x-padding);
      padding-right: var(--table-x-padding);
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      font-size: var(--text-sm)
  }

  .price-table table.price-table__table>tbody>tr>td:not(:last-child) {
      border-bottom: .0625rem solid var(--color-card-background);
      display: none
  }

  .price-table table.price-table__table>tbody>tr.even>td {
      border-color: #373b3c
  }

  .price-table table.price-table__table>tbody>tr>td[data-label]::before {
      content: attr(data-label);
      display: block;
      font-weight: 700;
      font-size: var(--text-sm);
      line-height: 1.3;
      letter-spacing: -.03em
  }

  .price-table table.price-table__table>tbody>tr>td[data-label] {
      display: flex;
      align-items: center;
      gap: var(--space-2)
  }

  .price-table__model::before {
      display: none!important
  }

  .price-table__delivery {
      display: none
  }

  .price-table__action-group {
      width: 100%
  }

  .price-table table.price-table__table>tbody>tr>td.price-table__delivery::before {
      content: "";
      display: block;
      width: 1.25rem;
      height: 1.25rem;
      background: url(/catalog/view/theme/default/image/cube.svg) no-repeat center center / contain
  }

  .price-table th.price-table__model {
      border-radius: var(--product-card-border-radius) var(--product-card-border-radius) 0 0
  }

  .price-table th:not(:first-child) {
      border: .0625rem solid #373b3c!important
  }

  .price-table tbody {
      display: block
  }

  .price-table__show-more {
      font-size: var(--text-sm);
      --more-btn-height: 2.75rem
  }

  .price-table__action-btn {
      width: 100%
  }

  .checkbox__label {
      font-size: var(--text-sm)
  }

  .tg-banner {
      padding: 0 0 3.125rem;
      margin: 0 0 3.125rem
  }

  .tg-banner__card {
      padding: 1rem;
      border-radius: var(--radius-2xl)
  }

  .tg-banner__close {
      top: .75rem;
      right: .75rem
  }

  .tg-banner__close-icon {
      width: 1.125rem;
      height: 1.125rem
  }

  .tg-banner__title {
      font-size: var(--text-lg)
  }

  .tg-banner__subtitle {
      padding-right: 2rem;
      font-size: var(--text-sm)
  }

  .tg-banner__button {
      --btn-height: 2.25rem;
      margin-top: .625rem;
      padding: 0 .875rem
  }

  .blog__slider {
      padding: 0 0 1.5625rem
  }

  .blog__grid {
      --blog-grid-cols: 2;
      gap: var(--space-4)
  }

  .blog__title {
      font-size: 1.375rem
  }

  .blog__title-icon {
      top: -.125rem;
      --icon-size: 1.25rem
  }

  .blog-card__title {
      font-size: var(--text-lg)
  }

  .blog-card__desc {
      font-size: var(--text-base)
  }

  .blog__accent-text {
      font-size: var(--text-md)
  }

  .blog-categories {
      --category-height: 2.25rem;
      margin: 0 0 2.5rem
  }

  .blog-categories__list {
      gap: var(--space-3)
  }

  .blog-categories__item {
      gap: var(--space-1-5);
      padding: 0 .625rem;
      font-size: var(--text-sm)
  }

  .blog-categories__item-icon {
      --icon-size: 1.125rem
  }

  .blog__more {
      padding: 0 1.25rem;
      margin: 1.25rem 0 0
  }

  .blog--grid-single {
      margin-top: 3rem
  }

  .article {
      margin: .5rem 0 0
  }

  .article::before {
      opacity: .5
  }

  .article::after {
      top: 11.0625rem;
      right: -21.375rem;
      width: 40rem;
      height: 40rem;
      opacity: .2
  }

  .article__meta {
      gap: var(--space-4) 0;
      flex-wrap: wrap;
      font-size: var(--text-sm)
  }

  .article__meta-item {
      flex: 0 0 48%
  }

  .article__meta-item:nth-child(2n) {
      text-align: end
  }

  .article__image-wrapper {
      border-radius: var(--radius-xl)
  }

  .article__header {
      margin: 1.875rem 0
  }

  .article__body {
      font-size: var(--text-base)
  }

  .moneta_box__catalog,.moneta_box__catalog,.article__body nav {
      padding: calc(var(--container-padding) * 1.25) var(--container-padding)
  }

  .subscribe_button_telegram__a,.subscribe_button_youtube__a {
      height: 4em
  }

  .number-control__input {
      width: 66px
  }

  .modal-content {
      width: 95%;
      max-height: 90vh
  }

  .modal-header {
      padding: 20px
  }

  .modal-header h2 {
      font-size: 20px
  }

  .modal-body {
      padding: 16px
  }

  .model-item {
      grid-template-columns: 60px 1fr auto;
      gap: var(--space-3);
      padding: 16px
  }

  .model-image {
      width: 60px;
      height: 45px
  }

  .model-name {
      font-size: var(--text-base)
  }

  .model-price {
      font-size: 16px
  }

  .add-to-cart-btn,.callback-btn,.added-status {
      min-width: 80px;
      height: 36px;
      font-size: var(--text-xs);
      padding: 8px 16px
  }

  .callback-btn {
      min-width: 120px
  }

  .price-subtype-badge {
      font-size: 10px;
      padding: 3px 6px
  }

  .pagination-list {
      gap: var(--space-1);
      padding: .5rem
  }

  .pagination-link {
      padding: .5rem .75rem;
      font-size: .8rem;
      min-width: 36px
  }

  .pagination-first .pagination-link,.pagination-last .pagination-link,.pagination-prev .pagination-link,.pagination-next .pagination-link {
      padding: .5rem .75rem
  }

  .pagination-text {
      display: none
  }

  .pagination-icon {
      width: 14px;
      height: 14px
  }

  .seo-text {
      padding: 1.25rem var(--container-padding);
      border-radius: var(--radius-3xl)
  }

  .seo-text ul {
      gap: var(--space-2)
  }

  .seo-text thead td,.seo-text thead th,.seo-text tbody td {
      padding-left: .75rem;
      padding-right: .75rem
  }

  .header__wrapper {
      gap: var(--space-9)
  }

  .product__gallery {
      -ms-grid-row: 1;
      -ms-grid-column: 1
  }

  .product-form {
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      -ms-grid-column: 1
  }

  .product-guarantee {
      -ms-grid-row: 3;
      -ms-grid-column: 1
  }
}

@media (max-width: 575px) {
  .hero__badge {
      display:flex;
      flex-direction: column;
      gap: var(--space-3)
  }

  .hero__badge-accent {
      justify-content: center;
      width: 100%
  }

  .hero__buttons {
      flex-direction: column
  }

  .hero__description {
      margin: 0 0 18.75rem
  }

  .hero__partners {
      gap: .9375rem
  }

  .cart-item-name {
      text-align: left;
      margin-bottom: 0
  }

  .cart-item {
      padding: 1rem 1rem 2.5rem
  }

  .cart-item-subprice {
      position: absolute;
      bottom: .5rem
  }

  .cart-item-image {
      display: none
  }

  .hero::before,.channel::before,.projects::before,.recommends::before,.media::before,.top-miners::before,.mining-hotels::before,.catalog::before {
      transform: rotate(13deg)
  }

  .top-miners::before {
      left: -18.25rem
  }

  .solution-card+.solution-card::before {
      width: 100%
  }

  .media-card {
      flex-direction: column;
      align-items: start;
      padding: 1.25rem .9375rem;
      gap: var(--space-3-5)
  }

  .media-card__video-container,.media-card__video {
      width: 100%
  }

  .media-card__description {
      margin: .375rem 0 0
  }

  .media-card__title {
      margin: .625rem 0 0
  }

  .hotel-card__features {
      flex-wrap: wrap;
      gap: var(--space-2) .8125rem
  }

  .mining-hotels__buttons {
      flex-direction: column
  }

  .footer__contact-list {
      gap: var(--space-5);
      grid-template-columns: 1fr
  }

  .footer__nav {
      grid-template-columns: 1fr
  }

  .special-offer__image {
      top: -.5rem;
      right: -.5rem;
      width: 21.875rem;
      height: 19.1875rem
  }

  .catalog__grid {
      grid-template-columns: 1fr
  }

  .product__head {
      flex-direction: column;
      align-items: start;
      gap: var(--space-5)
  }

  .product-guarantee__features {
      flex-direction: column
  }

  .blog__grid {
      --blog-grid-cols: 1
  }

  .article__header {
      margin: 1.25rem 0
  }

  .cart-item .moneta_box__catalog,.moneta_box__catalog.calc {
      flex-direction: column;
      align-items: start;
      gap: 1em
  }

  .moneta_box__catalog.calc p.moneta_box__catalog__p {
      text-align: left
  }

  .subscribe_button {
      grid-template-columns: 1fr
  }

  .subscribe_button__part:nth-child(1) {
      border-bottom: .1875rem solid rgb(255 255 255 / 10%)
  }
}

@media (min-width: 768px) and (max-width:1199px) {
  .about-us__card {
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-3)
  }

  .about-card__image-wrapper {
      position: relative;
      min-height: auto
  }

  .about-card__image {
      left: auto;
      right: 0;
      transform: translate(0,50%)
  }

  .about-card__image--1 {
      bottom: 1.25rem;
      right: -1.25rem;
      width: 13.75rem;
      height: 17.6875rem
  }

  .about-card__image--2 {
      bottom: .25rem;
      right: -8.125rem;
      width: 26.5rem;
      height: 16.1875rem
  }

  .about-card__image--3 {
      bottom: 0;
      right: -2.4375rem;
      width: 20.25rem;
      height: 12.3125rem;
      transform: scaleX(-1)
  }

  .about-card__image--4 {
      bottom: 50%;
      width: 13.75rem;
      height: 13.8125rem
  }
}

@media (max-width: 480px) {
  .toast-container {
      top:10px;
      right: 10px;
      left: 10px
  }

  .toast {
      min-width: auto;
      max-width: none;
      margin-bottom: 8px
  }

  .toast-header {
      padding: 12px 16px 8px
  }

  .toast-body {
      padding: 0 16px 12px
  }

  .pagination-list {
      flex-wrap: wrap;
      justify-content: center;
      gap: var(--space-1)
  }

  .pagination-link {
      padding: .5rem;
      min-width: 32px;
      font-size: var(--text-xs)
  }
}

@media (prefers-color-scheme: dark) {
  .pagination-list {
      background:#191e20;
      border-color: rgb(75 85 99 / .3)
  }

  .pagination-link {
      color: var(--color-gray-200)
  }

  .pagination-link:hover {
      background: var(--color-background-light);
      color: #000
  }

  .pagination-active {
      background: var(--color-accent)
  }

  .pagination-ellipsis {
      color: var(--color-gray-500)
  }
}

@media (prefers-contrast:high) {
  .pagination-link {
      border: 2px solid currentColor
  }

  .pagination-active {
      background: #000;
      color: #fff
  }
}

@media (prefers-reduced-motion:reduce) {
  .pagination-link,.pagination-icon,.pagination-wrapper {
      transition: none;
      animation: none
  }

  .pagination-link:hover {
      transform: none
  }
}

@media (max-width: 414px) {
  .product-item {
      flex-direction:column;
      align-items: start
  }

  .product-item__price,.product-item__price-new,.product-item__price-old {
      text-align: start
  }

  .product-item__col,.product-item__card-btn {
      width: 100%
  }
}

@media (min-width: 576px) {
  .blog__grid .blog-card--wide .blog-card__content {
      flex:0 0 40%;
      width: 40%
  }

  .blog-card--wide .blog-card__inner {
      flex-direction: row
  }

  .blog__grid .blog-card--wide {
      grid-column: 1 / calc(var(--blog-grid-cols) + 1)
  }

  .blog__grid .blog-card--wide .blog-card__image-wrapper {
      padding: 0;
      height: 100%;
      min-height: 18.75rem
  }
}

@media (min-width: 1199px) {
  .blog__grid .blog-card__image-wrapper {
      padding:0 0 41%
  }

  .blog__grid .blog-card--wide .blog-card__image-wrapper {
      min-height: 26rem
  }
}

@media (min-width: 576px) and (max-width:1199px) {
  .blog-card--wide {
      -webkit-box-ordinal-group:2;
      -ms-flex-order: 1;
      order: 1
  }
}

@media (max-width: 410px) {
  .tg-banner__bg {
      background-position:top 50% right -12rem
  }

  .blog-categories__list {
      display: grid;
      grid-template-columns: repeat(2,1fr);
      overflow-x: scroll
  }

  .blog-categories__item {
      padding: 0 .5rem
  }

  .blog__more {
      width: 100%;
      padding: 0 .625rem
  }
}

.calc-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px 16px;
  color: #fff;
  background: -o-linear-gradient(315deg,rgb(25 30 32 / .6) 0%,rgb(25 30 32 / .2) 100%);
  background: linear-gradient(135deg,rgb(25 30 32 / .6) 0%,rgb(25 30 32 / .2) 100%);
  border-radius: var(--radius-xl);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .35s ease,visibility .35s ease
}

.calc-loader.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto
}

.calc-loader--fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: rgb(0 0 0 / .45);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px)
}

.calc-loader__box {
  background: -o-linear-gradient(315deg,rgb(25 30 32 / .85) 0%,rgb(25 30 32 / .55) 100%);
  background: linear-gradient(135deg,rgb(25 30 32 / .85) 0%,rgb(25 30 32 / .55) 100%);
  border: var(--glass-border);
  border-radius: 14px;
  padding: 20px 22px;
  display: flex;
  align-items: center;
  gap: 14px
}

.calc-loader__spinner {
  width: 28px;
  height: 28px;
  border-radius: var(--radius-full);
  position: relative;
  background: -o-radial-gradient(farthest-side,#72B13B 94%,#0000) top/6px 6px no-repeat,conic-gradient(#0000 10%,#72B13B);
  background: radial-gradient(farthest-side,#72B13B 94%,#0000) top/6px 6px no-repeat,conic-gradient(#0000 10%,#72B13B);
  -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 6px),#000 0);
  animation: calc-spinner 1s infinite linear
}

.calc-loader__text {
  font-size: var(--text-base);
  letter-spacing: .2px;
  opacity: .9
}

@keyframes calc-spinner {
  to {
      transform: rotate(1turn)
  }
}

.faq {
  position: relative;
  z-index: 1;
  margin: 4.8125rem 0 0
}

.faq__title {
  margin: 0 0 4.625rem;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-5xl);
  line-height: 140%;
  letter-spacing: -.02em;
  color: var(--color-text-primary)
}

.faq__body {
  display: grid;
  gap: var(--space-5)
}

.faq__item {
  padding: 3.6875rem 2.6875rem 2.4375rem;
  background: var(--color-card-background);
  border-radius: var(--radius-3xl);
  cursor: pointer
}

.faq__item-header {
  position: relative;
  display: flex;
  gap: var(--space-5);
  padding-right: 2.5rem
}

.faq__item-header::after {
  --icons-size: 1.5rem;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: var(--icons-size);
  height: var(--icons-size);
  z-index: 1;
  background: url(/catalog/view/theme/default/image/faq-close.svg) center/contain no-repeat;
  transform: rotate(-135deg);
  transition: transform ease 0.5s
}

.faq__item.active .faq__item-header::after {
  transform: rotate(0)
}

.faq__item-icon {
  --icon-size: 2.5625rem;
  position: relative;
  top: -.4375rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size);
  height: var(--icon-size);
  object-fit: contain
}

.faq__item-title {
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-2xl);
  line-height: 100%;
  letter-spacing: -.03em;
  color: var(--color-text-primary)
}

.faq__item-body {
  padding: 1.9375rem 0 .5625rem 3.875rem;
  font-family: var(--font-family-quinary);
  font-weight: 600;
  font-size: 1.0625rem;
  line-height: 150%;
  letter-spacing: -.02em;
  color: #6e6e6e
}

.faq__item-body p {
  margin: 0
}

.faq__item-body p+p {
  margin-top: .625rem
}

@media (max-width: 1199px) {
  .faq__title {
      font-size:1.625rem;
      margin: 0 0 1.875rem
  }

  .faq__body {
      gap: var(--space-4)
  }

  .faq__item {
      padding: 2.5rem 1.5625rem 1.875rem
  }

  .faq__item-header {
      gap: var(--space-4)
  }

  .faq__item-icon {
      --icon-size: 2.25rem;
      top: -.3125rem
  }

  .faq__item-body {
      padding: .4375rem 0 .375rem 3.25rem;
      font-size: .9375rem
  }

  .faq__item-title {
      font-size: 1.375rem
  }

  .faq__item-body br {
      display: none
  }
}

@media (max-width: 767px) {
  .faq {
      margin:3.125rem 0 0
  }

  .faq__title {
      font-size: 1.375rem;
      margin: 0 0 1.5rem
  }

  .faq__item {
      padding: 1.25rem var(--container-padding) .9375rem
  }

  .faq__item-header {
      gap: var(--space-2-5);
      padding-right: 1.75rem
  }

  .faq__item-icon {
      --icon-size: 1.25rem;
      top: .0625rem
  }

  .faq__item-body {
      padding: .4375rem 0 .375rem 1.875rem;
      font-size: .9375rem
  }

  .faq__item-title {
      font-size: 1.0625rem;
      line-height: 1.4
  }

  .faq__item-header::after {
      --icons-size: 1.25rem;
      top: .0625rem
  }
}

.promo-banner {
  position: relative;
  z-index: 1;
  margin: 4.1875rem 0 0
}

.promo-banner__content {
  position: relative;
  z-index: 1;
  padding: 3.125rem 3.75rem 3.75rem;
  background: var(--color-card-background);
  font-family: var(--font-family-quinary);
  font-weight: 600;
  font-size: var(--text-xs);
  line-height: 150%;
  letter-spacing: -.02em;
  color: var(--color-text-primary);
  border-radius: var(--radius-3xl);
  overflow: hidden
}

.promo-banner__text-content {
  position: relative;
  z-index: 3
}

.promo-banner__title {
  margin: 0;
  font-family: var(--font-family-secondary);
  font-weight: 600;
  font-size: var(--text-5xl);
  line-height: 140%;
  letter-spacing: -.03em
}

.promo-banner__subtitle {
  margin: .5625rem 0 0;
  font-weight: 400;
  font-size: 1.0625rem;
  line-height: 140%;
  letter-spacing: -.03em;
  color: rgb(255 255 255 / .5)
}

.promo-banner__testimonial {
  margin: 2.75rem 0 0;
  color: #a4a4a4
}

.promo-banner__testimonial-text {
  max-width: 33.75rem
}

.promo-banner__features {
  display: grid;
  gap: var(--space-4);
  margin: 2.75rem 0 0
}

.promo-banner__feature {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  list-style: none
}

.promo-banner__feature-icon {
  --icon-size: 1.5rem;
  flex: 0 0 var(--icon-size);
  width: var(--icon-size)
}

.promo-banner__btn {
  --btn-height: 4.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: var(--btn-height);
  padding: .5rem 1.5rem;
  margin: 2.75rem 0 0;
  border-radius: var(--radius-md);
  font-family: var(--font-family-tertiary);
  font-weight: 700;
  font-size: var(--text-base);
  line-height: 1;
  letter-spacing: normal;
  background: var(--white-100);
  color: var(--color-text-dark);
  transition: background var(--transition-base),color var(--transition-base)
}

.promo-banner__image-wrapper::before {
  --gradient-size: 85.4375rem;
  content: "";
  position: absolute;
  top: calc(var(--gradient-size) / -1.4);
  left: calc(var(--gradient-size) / -1.7);
  z-index: 1;
  width: var(--gradient-size);
  height: var(--gradient-size);
  background: -o-radial-gradient(50% 50%,50% 50%,rgb(38 98 246 / .5),#fff0 100%);
  background: radial-gradient(50% 50% at 50% 50%,rgb(38 98 246 / .5),#fff0 100%);
  pointer-events: none
}

.promo-banner__image {
  position: absolute;
  top: -18.25rem;
  right: -7.9375rem;
  width: 89.25rem;
  height: 96.5625rem;
  object-fit: contain;
  pointer-events: none
}

@media (hover: hover) {
  .promo-banner__btn:hover {
      background:var(--color-accent);
      color: var(--color-text-primary)
  }
}

.promo-banner__btn:active {
  background: var(--color-accent-hover);
  color: var(--color-text-primary)
}

@media (max-width: 1199px) {
  .promo-banner__content {
      padding:1.375rem 1.5625rem 1.5625rem
  }

  .promo-banner__title {
      font-size: 1.625rem
  }

  .promo-banner__subtitle {
      font-size: .9375rem
  }

  .promo-banner__testimonial,.promo-banner__features,.promo-banner__btn {
      margin: 2rem 0 0
  }

  .promo-banner__feature-icon {
      --icon-size: 1.25rem
  }

  .promo-banner__btn {
      --btn-height: 3.375rem
  }

  .promo-banner__image {
      top: -10.125rem;
      right: auto;
      left: 21.875rem;
      width: 51.75rem;
      height: 56rem
  }

  .promo-banner__image-wrapper::before {
      --gradient-size: 54.1875rem
  }
}

@media (max-width: 991px) {
  .promo-banner__image {
      left:20.625rem
  }
}

@media (max-width: 767px) {
  .promo-banner {
      margin:3.125rem 0 0
  }

  .promo-banner__title {
      font-size: 1.375rem
  }

  .promo-banner__content {
      padding: 1rem var(--container-padding) 1.125rem
  }

  .promo-banner__btn {
      --btn-height: 2.75rem;
      padding: .5rem 1rem;
      font-size: var(--text-sm)
  }

  .promo-banner__image {
      top: 4.875rem;
      left: 15.625rem;
      width: 29.25rem;
      height: 31.625rem
  }

  .promo-banner__feature-icon {
      --icon-size: 1.125rem
  }

  .promo-banner__testimonial,.promo-banner__features,.promo-banner__btn {
      margin: 1.5rem 0 0
  }
}

@media (max-width: 575px) {
  .promo-banner__image {
      top:auto;
      bottom: -10rem;
      left: 6.875rem;
      opacity: .9
  }
}

.contact {
  position: relative;
  padding: 0;
  overflow: hidden
}

.contact__bg-icon {
  position: absolute;
  top: -5rem;
  right: -10rem;
  width: 35rem;
  height: 35rem;
  opacity: .03;
  transform: rotate(-15deg);
  pointer-events: none;
  z-index: 0;
  color: var(--color-text-primary)
}

.contact__bg-icon svg {
  width: 100%;
  height: 100%
}

.contact__container {
  position: relative;
  z-index: 1;
  max-width: 75rem;
  margin: 0 auto
}

.contact__header {
  margin-bottom: 2rem;
  text-align: center
}

.contact__title {
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 .75rem 0
}

.contact__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-11)
}

.contact__section-title {
  font-size: var(--text-2xl);
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 0 0 1.5rem 0;
  padding-bottom: .75rem;
  border-bottom: .125rem solid rgb(255 255 255 / .1)
}

.contact-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-6)
}

@media (min-width: 768px) {
  .contact-cards {
      grid-template-columns:repeat(2,1fr)
  }
}

.contact-card {
  background: rgb(255 255 255 / .03);
  border: .03125rem solid rgb(255 255 255 / .06);
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: 0 .125rem .5rem rgb(0 0 0 / .3);
  backdrop-filter: blur(20px) saturate(1.8);
  -webkit-backdrop-filter: var(--glass-blur);
  transition: all var(--transition-base)
}

.contact-card:hover {
  box-shadow: 0 .25rem 1rem rgb(0 0 0 / .4);
  transform: translateY(-.125rem)
}

.contact-card--primary {
  border-color: rgb(255 255 255 / .08);
  border-width: .03125rem
}

.contact-card__image {
  width: 100%;
  height: 12.5rem;
  overflow: hidden;
  background: var(--color-background)
}

.contact-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.contact-card__body {
  padding: 1.5rem
}

.contact-info {
  display: flex;
  flex-direction: column;
  gap: var(--space-5)
}

.contact-info__item {
  display: flex;
  gap: var(--space-4);
  align-items: flex-start
}

.contact-info__icon {
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(255 255 255 / .05);
  color: var(--color-text-primary);
  border-radius: var(--radius-full);
  font-size: var(--text-md);
  border: .03125rem solid rgb(255 255 255 / .06);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm)
}

.contact-info__content {
  flex: 1
}

.contact-info__title {
  font-size: var(--text-xl);
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 0 0 .5rem 0
}

.contact-info__label {
  font-size: var(--text-base);
  font-weight: 600;
  color: var(--color-text-secondary);
  display: block;
  margin-bottom: .25rem
}

.contact-info__text {
  font-size: var(--text-base);
  color: var(--color-text-primary);
  margin: 0;
  line-height: 1.6
}

.contact-info__address {
  font-size: var(--text-base);
  color: var(--color-text-primary);
  font-style: normal;
  line-height: 1.6;
  margin: 0
}

.contact-info__schedule {
  font-size: var(--text-base);
  color: var(--color-text-primary);
  margin: .5rem 0 0 0;
  line-height: 1.6;
  display: flex;
  align-items: center;
  gap: var(--space-2)
}

.contact-info__schedule i {
  color: var(--color-text-secondary)
}

.contact-card__actions {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: .03125rem solid rgb(255 255 255 / .05)
}

.contact-card__map-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: .75rem 1.5rem;
  background: rgb(255 255 255 / .05);
  color: var(--color-text-primary);
  text-decoration: none;
  border-radius: var(--radius-md);
  font-weight: 600;
  font-size: var(--text-base);
  transition: all var(--transition-base);
  border: .03125rem solid rgb(255 255 255 / .08);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm)
}

.contact-card__map-btn:hover {
  background: rgb(255 255 255 / .08);
  color: var(--color-text-primary);
  border-color: rgb(255 255 255 / .12);
  transform: translateY(-.125rem)
}

.contact-card__map-btn i {
  font-size: var(--text-md)
}

.contact__map-section {
  margin-top: 1.5rem
}

.contact-card--map {
  width: 100%
}

.contact-card__map {
  width: 100%
}

.contact-card__map-iframe {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  border-radius: var(--radius-md)
}

.contact-card__map-iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: var(--radius-md)
}

.contact-locations {
  display: flex;
  flex-direction: column;
  gap: var(--space-4)
}

.contact-location {
  background: rgb(255 255 255 / .03);
  border: .03125rem solid rgb(255 255 255 / .06);
  border-radius: var(--radius-md);
  overflow: hidden;
  backdrop-filter: blur(20px) saturate(1.8);
  -webkit-backdrop-filter: var(--glass-blur)
}

.contact-location__header {
  padding: 1rem 1.25rem;
  background: var(--color-background);
  border-bottom: .03125rem solid rgb(255 255 255 / .05)
}

.contact-location__name {
  margin: 0
}

.contact-location__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  font-size: var(--text-lg);
  font-weight: 600;
  color: var(--color-text-primary);
  text-decoration: none;
  transition: color var(--transition-base)
}

.contact-location__toggle:hover {
  color: rgb(255 255 255 / .7)
}

.contact-location__toggle i {
  transition: transform var(--transition-base)
}

.contact-location__toggle[aria-expanded="true"] i {
  transform: rotate(180deg)
}

.contact-location__content {
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease
}

.contact-location__content.in {
  padding: 1.25rem;
  max-height: 62.5rem
}

.contact-location .contact-card {
  box-shadow: none;
  border: none;
  border-radius: 0
}

.contact-location .contact-card:hover {
  transform: none
}

.contact-form {
  background: rgb(255 255 255 / .03);
  border: .03125rem solid rgb(255 255 255 / .06);
  border-radius: var(--radius-xl);
  padding: 2rem;
  box-shadow: 0 .125rem .5rem rgb(0 0 0 / .3);
  backdrop-filter: blur(20px) saturate(1.8);
  -webkit-backdrop-filter: var(--glass-blur)
}

.contact-form__group {
  margin-bottom: 1.5rem
}

.contact-form__label {
  display: block;
  font-size: var(--text-base);
  font-weight: 600;
  color: var(--color-text-primary);
  margin-bottom: .5rem
}

.contact-form__required {
  color: #e74c3c;
  margin-left: .25rem
}

.contact-form__input-wrapper {
  position: relative
}

.contact-form__input-icon {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-secondary);
  font-size: var(--text-md);
  pointer-events: none;
  transition: color var(--transition-base)
}

.contact-form__input-icon--textarea {
  top: 1rem;
  transform: none
}

.contact-form__input,.contact-form__textarea {
  width: 100%;
  padding: .75rem 1rem .75rem 3rem;
  font-size: var(--text-base);
  color: var(--color-text-primary);
  background: var(--color-background);
  border: .03125rem solid rgb(255 255 255 / .08);
  border-radius: var(--radius-md);
  transition: all var(--transition-base);
  font-family: var(--font-family)
}

.contact-form__textarea {
  resize: vertical;
  min-height: 7.5rem
}

.contact-form__input:focus,.contact-form__textarea:focus {
  outline: none;
  border-color: rgb(255 255 255 / .3);
  box-shadow: 0 0 0 .1875rem rgb(255 255 255 / .05)
}

.contact-form__input:focus~.contact-form__input-icon,.contact-form__textarea:focus~.contact-form__input-icon {
  color: rgb(255 255 255 / .8)
}

.contact-form__input--error,.contact-form__textarea--error {
  border-color: #e74c3c
}

.contact-form__error {
  display: flex;
  align-items: center;
  gap: var(--space-1-5);
  margin-top: .5rem;
  font-size: var(--text-sm);
  color: #e74c3c
}

.contact-form__error i {
  font-size: var(--text-base)
}

.contact-form__captcha {
  margin-bottom: 1.5rem
}

.contact-form__actions {
  display: flex;
  justify-content: flex-end
}

.contact-form__submit {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: .875rem 2rem;
  font-size: var(--text-md);
  font-weight: 600;
  color: var(--color-text-primary);
  background: rgb(255 255 255 / .05);
  border: .03125rem solid rgb(255 255 255 / .1);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-base);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur-sm)
}

.contact-form__submit:hover {
  background: rgb(255 255 255 / .08);
  border-color: rgb(255 255 255 / .15);
  transform: translateY(-.125rem)
}

.contact-form__submit:active {
  transform: translateY(0);
  background: rgb(255 255 255 / .08)
}

.contact-form__submit i {
  font-size: var(--text-lg)
}

@media (max-width: 1199px) {
  .contact__bg-icon {
      width:28rem;
      height: 28rem;
      top: -3rem;
      right: -8rem
  }

  .contact__title {
      font-size: var(--text-4xl)
  }

  .contact__section-title {
      font-size: var(--text-xl)
  }

  .contact__content {
      gap: var(--space-9)
  }

  .contact-card__body {
      padding: 1.25rem
  }

  .contact-info {
      gap: var(--space-4)
  }

  .contact-info__icon {
      width: 2.25rem;
      height: 2.25rem;
      min-width: 2.25rem;
      font-size: var(--text-base)
  }

  .contact-info__title {
      font-size: var(--text-lg)
  }

  .contact-form {
      padding: 1.5rem
  }

  .contact-form__submit {
      width: 100%;
      justify-content: center
  }

  .contact-location__toggle {
      font-size: var(--text-md)
  }
}

@media (max-width: 767px) {
  .contact__bg-icon {
      width:20rem;
      height: 20rem;
      top: -2rem;
      right: -5rem;
      opacity: .02
  }

  .contact__title {
      font-size: var(--text-2xl)
  }

  .contact__section-title {
      font-size: var(--text-lg)
  }

  .contact-card__image {
      height: 10rem
  }

  .contact-card__body {
      padding: 1rem
  }

  .contact-info__item {
      gap: var(--space-3)
  }

  .contact-form {
      padding: 1.25rem
  }

  .contact-form__input,.contact-form__textarea {
      padding: .625rem .75rem .625rem 2.625rem;
      font-size: var(--text-sm)
  }

  .contact-form__input-icon {
      left: .75rem;
      font-size: var(--text-base)
  }

  .contact-form__submit {
      padding: .75rem 1.5rem;
      font-size: var(--text-base)
  }
}

@media (max-width: 575px) {
  .contact__bg-icon {
      width:15rem;
      height: 15rem;
      top: -1rem;
      right: -3rem;
      opacity: .015
  }

  .contact__title {
      font-size: 1.375rem
  }

  .contact__section-title {
      font-size: var(--text-md)
  }

  .contact__content {
      gap: var(--space-6)
  }
}

.header__wrapper::after,.footer::before,.footer::after {
  display: none
}

@media (min-width: 1200px) {
  .hero__button {
      padding:0 1.5625rem;
      font-size: var(--text-base)
  }
}

@media (max-width: 1199px) {
  .hero--about {
      --hero-bottom-padding:7.5rem
  }

  .hero::after {
      display: none
  }

  .hero__title {
      font-size: var(--text-5xl)
  }

  .hero__description {
      margin: 0 0 4.4375rem
  }

  .hero__media {
      --image-width: 32.0625rem;
      top: 0;
      right: 0
  }

  .hero__media--delivery {
      top: 2.5rem;
      right: -3.75rem
  }

  .hero__media::before {
      top: -36.875rem;
      right: -55.625rem;
      width: 132.1875rem;
      height: 92.5rem
  }

  .hero__media--delivery::before {
      top: -38.875rem;
      right: -52.625rem
  }

  .hero__media--leasing::before {
      right: -53.625rem
  }

  .hero__media-pool {
      width: 444px;
      height: 440px;
      top: -5.4375rem;
      right: 5.25rem
  }

  .hero__media-employees {
      width: 590px;
      height: 406px;
      bottom: 5px
  }

  .blog__slider {
      --slider-gap: 0rem
  }

  .article__meta {
      flex-direction: row;
      justify-content: space-between;
      margin: 1rem 0 0
  }
}

@media (max-width: 991px) {
  body:has(.hero--about) footer {
      padding-top:0
  }

  .hero--about {
      --hero-bottom-padding: 0
  }

  .hero__media {
      position: relative;
      right: auto;
      margin: 0 auto 3rem;
      max-width: 100%
  }

  .hero--about .hero__media {
      margin-bottom: 0
  }

  .hero--about .hero__partners {
      margin-bottom: 170px
  }

  .hero__media--delivery {
      top: 0
  }

  .hero__description {
      margin: 0 0 3.4375rem
  }

  .hero__media-employees {
      position: relative;
      right: auto;
      bottom: 0;
      max-width: 100%;
      height: auto;
      padding: 0 var(--container-padding);
      display: block;
      margin-left: auto;
      margin-right: auto
  }

  .hero__media-pool {
      width: 354px;
      height: 351px;
      top: auto;
      bottom: 160px;
      right: 50%;
      transform: translate(50%,0)
  }
}

@media (max-width: 767px) {
  .hero__title {
      font-size:var(--text-3xl)
  }

  .hero__description {
      margin: 0 0 2rem
  }

  .hero__media {
      --image-width: 20.625rem;
      margin: 0 auto 2rem
  }

  .hero__media::before {
      top: -17.5rem;
      right: -28.75rem;
      width: 74rem;
      height: 51.75rem
  }

  .hero__media--delivery::before {
      top: -20.5rem
  }

  .hero__media-pool {
      width: 300px;
      height: 300px;
      bottom: 230px
  }
}

@media (max-width: 575px) {
  .hero__title {
      font-size:1.375rem
  }

  .hero__bg {
      right: auto;
      left: -6.875rem;
      bottom: 11.375rem;
      width: 36.25rem;
      height: 28.3125rem
  }

  .hero__media-pool {
      width: 50vw;
      height: 50vw;
      bottom: 28vw
  }

  .hero--about .hero__partners {
      margin-bottom: 24vw
  }
}

@media (max-width: 375px) {
  .product-card__spec {
      font-size:var(--text-sm)
  }
}
