@charset "UTF-8";
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 300;
  src: local("Nunito Light"), url("/themes/main/assets/fonts/Nunito/Nunito-Light.woff2") format("woff2"), url("/themes/main/assets/fonts/Nunito/Nunito-Light.woff") format("woff"), url("/themes/main/assets/fonts/Nunito/Nunito-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  src: local("Nunito Regular"), url("/themes/main/assets/fonts/Nunito/Nunito-Regular.woff2") format("woff2"), url("/themes/main/assets/fonts/Nunito/Nunito-Regular.woff") format("woff"), url("/themes/main/assets/fonts/Nunito/Nunito-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 600;
  src: local("Nunito SemiBold"), url("/themes/main/assets/fonts/Nunito/Nunito-SemiBold.woff2") format("woff2"), url("/themes/main/assets/fonts/Nunito/Nunito-SemiBold.woff") format("woff"), url("/themes/main/assets/fonts/Nunito/Nunito-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "Bebas Neue";
  src: local("Bebas Neue Regular"), local("Bebas-Neue-Regular"), url("/themes/main/assets/fonts/BebasNeue/BebasNeueRegular.woff2") format("woff2"), url("/themes/main/assets/fonts/BebasNeue/BebasNeueRegular.woff") format("woff"), url("/themes/main/assets/fonts/BebasNeue/BebasNeueRegular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Bebas Neue";
  src: local("Bebas Neue Bold"), local("Bebas-Neue-Bold"), url("/themes/main/assets/fonts/BebasNeue/BebasNeueBold.woff2") format("woff2"), url("/themes/main/assets/fonts/BebasNeue/BebasNeueBold.woff") format("woff"), url("/themes/main/assets/fonts/BebasNeue/BebasNeueBold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 200;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-ExtraLight.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 300;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-Light.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-Regular.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-Medium.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 600;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-SemiBold.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-Bold.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 800;
  src: url("/themes/main/assets/fonts/Manrope/Manrope-ExtraBold.ttf") format("truetype");
  font-display: swap;
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  99% {
    opacity: 0;
    z-index: 1;
  }
  100% {
    opacity: 0;
    display: none;
  }
}
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0px rgba(123, 27, 56, 0), 0 0 0 0px rgba(123, 27, 56, 0);
  }
  40% {
    box-shadow: 0 0 0 15px rgba(123, 27, 56, 0.2), 0 0 0 27px rgba(123, 27, 56, 0.12);
  }
  80% {
    box-shadow: 0 0 0 15px rgba(123, 27, 56, 0), 0 0 0 27px rgba(123, 27, 56, 0);
  }
  100% {
    box-shadow: 0 0 0 0px rgba(123, 27, 56, 0), 0 0 0 27px rgba(123, 27, 56, 0);
  }
}
@keyframes slideme {
  0% {
    left: -120px;
    margin-left: 0px;
  }
  30% {
    left: 110%;
    margin-left: 80px;
  }
  100% {
    left: 110%;
    margin-left: 80px;
  }
}
.richtext h1,
.richtext h2,
.richtext h3 {
  color: inherit;
  font-size: 24px;
  font-weight: 600;
  margin: 0 0 16px;
}
@media (min-width: 768px) {
  .richtext h1,
  .richtext h2,
  .richtext h3 {
    font-size: 28px;
  }
}
@media (min-width: 1024px) {
  .richtext h1,
  .richtext h2,
  .richtext h3 {
    font-size: 32px;
  }
}
@media (min-width: 1280px) {
  .richtext h1,
  .richtext h2,
  .richtext h3 {
    font-size: 36px;
  }
}
.richtext h4,
.richtext h5,
.richtext h6 {
  color: inherit;
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 16px;
}
@media (min-width: 768px) {
  .richtext h4,
  .richtext h5,
  .richtext h6 {
    font-size: 24px;
  }
}
.richtext b,
.richtext strong {
  color: inherit;
  font-size: 18px;
  font-weight: 600;
}
.richtext p {
  color: inherit;
  margin-bottom: 16px;
}
.richtext p:last-child {
  margin-bottom: 0;
}
.richtext a {
  border-bottom: 1px solid #1E293B;
  color: #1E293B;
  transition: all 0.2s;
  cursor: pointer;
  text-decoration: none;
}
.richtext a:hover, .richtext a:focus {
  color: #7B1B38;
  border-bottom-color: #7B1B38;
}
.richtext u {
  text-decoration: none;
}
.richtext ul,
.richtext ol {
  padding: 0;
  margin: 0 0 16px 0;
  list-style-type: none;
}
.richtext li {
  padding-left: 16px;
  position: relative;
  margin-bottom: 12px;
}
.richtext li::before {
  content: "";
  display: block;
  background: #7B1B38;
  width: 4px;
  height: 4px;
  border-radius: 2px;
  position: absolute;
  left: 0;
  top: 6px;
}
@media (min-width: 768px) {
  .richtext li::before {
    top: 8px;
  }
}
.richtext li:last-child {
  margin-bottom: 0;
}
.richtext li img {
  display: block;
  margin-bottom: 12px;
}
.richtext li img:last-child {
  margin-bottom: 0;
}

/**
 * Swiper 12.1.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 24, 2026
 */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
  .swiper-slide,
  .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
}

/* CSS Mode */
.swiper-css-mode {
  > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none; /* For Internet Explorer and Edge */
    &::-webkit-scrollbar {
      display: none;
    }
  }
  > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  &.swiper-horizontal {
    > .swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-slides-offset-before);
      scroll-margin-inline-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-inline-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-vertical {
    > .swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-slides-offset-before);
      scroll-margin-block-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-block-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-free-mode {
    > .swiper-wrapper {
      scroll-snap-type: none;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: none;
    }
  }
  &.swiper-centered {
    > .swiper-wrapper::before {
      content: "";
      flex-shrink: 0;
      order: 9999;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }
  &.swiper-centered.swiper-horizontal {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      height: 100%;
      min-height: 1px;
      width: var(--swiper-centered-offset-after);
    }
  }
  &.swiper-centered.swiper-vertical {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      width: 100%;
      min-width: 1px;
      height: var(--swiper-centered-offset-after);
    }
  }
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d {
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom,
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress),
.swiper-watch-progress .swiper-slide-visible {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  &.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  &.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled & {
    display: none !important;
  }
  ::slotted(svg),
  svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    transform-origin: center;
    fill: currentColor;
    pointer-events: none;
  }
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
  ::slotted(.swiper-navigation-icon),
  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    margin-left: 0;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }
  .swiper-button-next,
  & ~ .swiper-button-next,
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}

.swiper-vertical {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    left: var(--swiper-navigation-top-offset, 50%);
    right: auto;
    margin-left: calc(0px - var(--swiper-navigation-size) / 2);
    margin-top: 0;
  }
  .swiper-button-prev,
  ~ .swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto;
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }
  .swiper-button-next,
  ~ .swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
  &.swiper-pagination-hidden {
    opacity: 0;
  }
  .swiper-pagination-disabled > &,
  &.swiper-pagination-disabled {
    display: none !important;
  }
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
  .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  button& {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
  }
  .swiper-pagination-clickable & {
    cursor: pointer;
  }
  &:only-child {
    display: none !important;
  }
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
  .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  &.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    .swiper-pagination-bullet {
      display: inline-block;
      transition: 200ms transform, 200ms top;
    }
  }
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-horizontal.swiper-pagination-bullets {
  .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  &.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    .swiper-pagination-bullet {
      transition: 200ms transform, 200ms left;
    }
  }
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
  .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  .swiper-rtl & .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  .swiper-horizontal > &,
  &.swiper-pagination-horizontal,
  .swiper-vertical > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  .swiper-vertical > &,
  &.swiper-pagination-vertical,
  .swiper-horizontal > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
}

.swiper-pagination-lock {
  display: none;
}

.swiper-creative {
  .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
}

body {
  color: #1E293B;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 400;
  min-width: 320px;
  line-height: 1.25;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  overflow-x: hidden;
  background: #FFFFFF;
}
body.open-modal {
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media (min-width: 1024px) {
  body {
    font-size: 16px;
  }
}

input,
button,
select,
textarea {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  padding: 0;
  margin: 0;
  font-weight: 400;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 14px;
  background: none;
  border: none;
  outline: none;
  transition: all 0.3s ease;
}
input:hover, input:focus,
button:hover,
button:focus,
select:hover,
select:focus,
textarea:hover,
textarea:focus {
  outline: none;
  cursor: pointer;
}
@media (min-width: 1024px) {
  input,
  button,
  select,
  textarea {
    font-size: 16px;
  }
}

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

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

a {
  color: #7B1B38;
  text-decoration: none;
  transition: all 0.3s ease;
}
a:hover {
  color: #7B1B38;
  text-decoration: none;
}

img {
  max-width: 100%;
  display: block;
}

span[hidden],
img[hidden],
a[hidden],
.hidden {
  display: none;
}

svg {
  display: inline-block;
  transition: all 0.25s ease;
}

.section {
  width: 100%;
}
@media (max-width: 768px) {
  .section {
    padding: 10px;
  }
}

.section-gap {
  margin-bottom: 40px;
}

.mr-10 {
  margin-right: 10px;
}

.bg-white {
  background: white !important;
}

.wrap {
  max-width: 1640px;
  width: 100%;
  padding: 0 10px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .wrap {
    padding: 0 20px;
  }
}
.container {
  margin: 0 auto;
  max-width: 1740px;
  width: 100%;
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #1E293B;
  vertical-align: top;
  border-color: rgb(38.595505618, 52.7471910112, 75.904494382);
  border-spacing: 0;
  border-top: 1px solid rgb(38.595505618, 52.7471910112, 75.904494382);
}
.table_responsive {
  min-width: 768px;
}
@media (min-width: 768px) {
  .table_responsive {
    min-width: auto;
  }
}
.table tr,
.table td,
.table thead,
.table tbody {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}
.table thead {
  vertical-align: bottom;
}
.table tr {
  border-width: 0;
}
.table th {
  border-bottom: 1px solid rgb(38.595505618, 52.7471910112, 75.904494382);
}
.table th:first-child {
  border-left: 1px solid rgb(38.595505618, 52.7471910112, 75.904494382);
}
.table td,
.table th {
  font-size: 14px;
  line-height: 20px;
  color: #1E293B;
  padding: 8px 6px;
  border-width: 1px;
  border-top: 0;
  border-right: 0;
}
.table td:last-child,
.table th:last-child {
  border-right: 1px solid #64748B;
}
@media (min-width: 768x) {
  .table td,
  .table th {
    padding: 10px 8px;
    font-size: 16px;
    line-height: 19px;
  }
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.title {
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  color: #1E293B;
  margin-bottom: 48px;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  text-transform: uppercase;
}
@media (max-width: 1280px) {
  .title {
    font-size: 32px;
    margin-bottom: 40px;
  }
}
@media (max-width: 1024px) {
  .title {
    font-size: 28px;
    margin-bottom: 32px;
  }
}
@media (max-width: 768px) {
  .title {
    font-size: 24px;
    margin-bottom: 28px;
    margin-left: 20px;
  }
}

.hidden {
  display: none;
}

.control {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid rgb(230.15, 237.25, 244.35);
  background: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
}
.control__ico {
  width: 16px;
  height: 16px;
  pointer-events: none;
  color: #0d0d0d;
}

.toastify {
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 400;
  color: #FFFFFF;
  display: inline-block;
  box-shadow: 0 3px 6px -1px rgba(0, 0, 0, 0.15), 0 10px 36px -4px rgba(13, 13, 13, 0.4);
  position: fixed;
  top: -150px;
  right: 15px;
  opacity: 0;
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  border-radius: 2px;
  cursor: pointer;
  z-index: 999;
}
.toastify--add {
  background: linear-gradient(135deg, #10B981, rgb(11.9402985075, 138.0597014925, 96.2686567164));
}
.toastify--remove {
  background: linear-gradient(135deg, #EF4444, rgb(234.9802955665, 21.0197044335, 21.0197044335));
}
.toastify--default {
  background: linear-gradient(135deg, #1E293B, rgb(38.595505618, 52.7471910112, 75.904494382));
}
.toastify.on {
  opacity: 1;
}

.anim__left-to-right {
  animation-name: LeftToRight;
  animation-duration: 1.5s;
}
.anim__right-to-left {
  animation-name: RightToLeft;
  animation-duration: 1.5s;
}
.anim__top-to-bottom {
  animation-name: TopToBottom;
  animation-duration: 1.5s;
}
.anim__bottom-to-top {
  animation-name: BottomToTop;
  animation-duration: 1.5s;
}

@keyframes LeftToRight {
  0% {
    transform: translateX(-1000px);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    opacity: 1;
  }
}
@keyframes RightToLeft {
  0% {
    transform: translateX(1000px);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    opacity: 1;
  }
}
@keyframes TopToBottom {
  0% {
    transform: translateY(-400px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
  }
}
@keyframes BottomToTop {
  0% {
    transform: translateY(400px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
  }
}
@keyframes slideme {
  0% {
    left: -30px;
    margin-left: 0;
  }
  30% {
    left: 110%;
    margin-left: 80px;
  }
  100% {
    left: 110%;
    margin-left: 80px;
  }
}
.header {
  position: sticky;
  top: 20px;
  left: 0;
  width: 100%;
  z-index: 1000;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__group {
  background: #e1e1e1;
  padding: 10px 30px;
  border-radius: 20px;
  box-shadow: 0 0px 6px #7B1B38;
  border-bottom-color: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 90px;
}
@media (max-width: 992px) {
  .header__group {
    min-height: 80px;
  }
}
@media (max-width: 768px) {
  .header__group {
    min-height: 70px;
  }
}
.header__left {
  display: flex;
  align-items: center;
  gap: 50px;
}
@media (max-width: 992px) {
  .header__left {
    gap: 30px;
  }
}
.header__right {
  display: flex;
  align-items: center;
  gap: 28px;
}
@media (max-width: 768px) {
  .header__right {
    gap: 15px;
  }
}
.header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__logo:hover {
  opacity: 0.8;
}
.header__logo-src {
  max-height: 70px;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 992px) {
  .header__logo-src {
    max-height: 60px;
  }
  .header__menu {
    display: none;
  }
}
.header__nav {
  display: flex;
  align-items: center;
  gap: 8px;
}
.header__nav-item {
  position: relative;
}
.header__nav-item--catalog {
  display: flex;
  align-items: center;
  padding: 10px 15px;
  gap: 6px;
  cursor: pointer;
  border-radius: 10px;
  background: transparent;
  border: 1px solid #7B1B38;
}
.header__nav-item--catalog:hover {
  background: #7b1b38;
}
.header__nav-item--catalog:hover .header__nav-link {
  color: #FFFFFF;
}
.header__nav-item--catalog .header__nav-angle {
  fill: #7B1B38;
}
.header__nav-item--catalog .header__nav-link {
  color: #1E293B;
}
.header__nav-item--catalog .header__nav-link:hover {
  background: #7b1b38;
  color: #FFFFFF;
}
.header__nav-item--catalog:hover .header__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.header__nav-item--catalog:hover .header__nav-angle {
  transform: rotate(180deg);
}
.header__nav-link {
  font-size: 17px;
  font-weight: 500;
  color: #1a1a2e;
  text-decoration: none;
  border-radius: 8px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
.header__nav-link:hover {
  color: #7B1B38;
}
.header__nav-angle {
  width: 18px;
  height: 18px;
  fill: #1a1a2e;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}
.header__nav-angle:hover {
  fill: #7B1B38;
}
.header__dropdown {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 260px;
  background: #e1e1e1;
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 100;
}
.header__dropdown::before {
  content: "";
  position: absolute;
  top: -7px;
  left: 25px;
  width: 14px;
  height: 14px;
  background: #e1e1e1;
  transform: rotate(45deg);
  box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.02);
}
.header__dropdown-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 10px;
}
.header__dropdown-link {
  padding: 12px 18px;
  font-size: 15px;
  color: #1a1a2e;
  text-decoration: none;
  border-radius: 8px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__dropdown-link:hover {
  color: #7B1B38;
  background: rgba(123, 27, 56, 0.08);
  transform: translateX(6px);
}
.header__phones {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media (max-width: 992px) {
  .header__phones {
    display: none;
  }
}
.header__phone {
  font-size: 16px;
  font-weight: 600;
  color: #1a1a2e;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__phone:hover {
  color: #7B1B38;
}
.header__socials {
  display: flex;
  align-items: center;
  gap: 12px;
}
@media (max-width: 768px) {
  .header__socials--desktop {
    display: none;
  }
}
.header__social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: transparent;
  border: 1.5px solid #7B1B38;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__social:hover {
  background: #7B1B38;
  transform: translateY(-2px);
}
.header__social:hover .header__social-ico {
  color: #ffffff;
}
.header__social-ico {
  width: 20px;
  height: 20px;
  fill: #7B1B38;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__cb {
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .header__cb {
    display: none !important;
  }
}
.header__hamburger {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 32px;
  height: 24px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 101;
}
@media (max-width: 992px) {
  .header__hamburger {
    display: flex;
  }
}
.header__hamburger-line {
  width: 100%;
  height: 2.5px;
  background: #1a1a2e;
  border-radius: 2px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header__hamburger--active .header__hamburger-line:nth-child(1) {
  transform: translateY(10.5px) rotate(45deg);
}
.header__hamburger--active .header__hamburger-line:nth-child(2) {
  opacity: 0;
}
.header__hamburger--active .header__hamburger-line:nth-child(3) {
  transform: translateY(-10.5px) rotate(-45deg);
}

.mobile-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 80%;
  max-width: 400px;
  height: 100vh;
  background: #e1e1e1;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  z-index: 999;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  padding: 100px 24px 30px;
  overflow-y: auto;
}
.mobile-menu--open {
  right: 0;
}
.mobile-menu__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 998;
}
.mobile-menu__overlay--visible {
  opacity: 1;
  visibility: visible;
}
.mobile-menu__nav {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.mobile-menu__nav-item--catalog .mobile-menu__nav-link {
  color: #7B1B38;
  justify-content: space-between;
  background: rgba(123, 27, 56, 0.08);
}
.mobile-menu__nav-item--catalog .mobile-menu__nav-link svg {
  stroke: #7B1B38;
}
.mobile-menu__nav-link {
  padding: 16px 18px;
  font-size: 18px;
  font-weight: 500;
  color: #1a1a2e;
  text-decoration: none;
  border-radius: 10px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  align-items: center;
}
.mobile-menu__nav-link:hover, .mobile-menu__nav-link--active {
  color: #7B1B38;
  background: rgba(123, 27, 56, 0.15);
}
.mobile-menu__dropdown {
  display: none;
  flex-direction: column;
  gap: 8px;
  padding: 12px 0 8px 30px;
}
.mobile-menu__dropdown--open {
  display: flex;
}
.mobile-menu__dropdown-link {
  padding: 12px 18px;
  font-size: 16px;
  color: #666666;
  text-decoration: none;
  border-radius: 8px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-menu__dropdown-link:hover {
  color: #7B1B38;
  background: rgba(123, 27, 56, 0.08);
}
.mobile-menu__phones {
  margin-top: 40px;
  padding-top: 25px;
  border-top: 1px solid #eaeaea;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.mobile-menu__phone {
  font-size: 18px;
  font-weight: 600;
  color: #1a1a2e;
  text-decoration: none;
}
.mobile-menu__phone:hover {
  color: #7B1B38;
}
.mobile-menu__socials {
  margin-top: 30px;
  display: flex;
  gap: 15px;
}
.mobile-menu__social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  border: 1.5px solid #7B1B38;
  background: transparent;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-menu__social:hover {
  background: #7B1B38;
}
.mobile-menu__social:hover svg {
  fill: #ffffff;
}
.mobile-menu__social svg {
  width: 22px;
  height: 22px;
  fill: #7B1B38;
}
.mobile-menu__cb {
  margin-top: 30px;
  width: 100%;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 10px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
  border: none;
  gap: 10px;
}
.button--theme {
  background: #7B1B38;
  color: white;
}
.button--theme:hover {
  background: rgb(81.18, 17.82, 36.96);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(123, 27, 56, 0.3);
}
.button--sm {
  padding: 12px 28px;
  font-size: 15px;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.header {
  animation: fadeInDown 0.5s ease;
}

.footer {
  width: 100%;
}
.footer__top {
  color: #1E293B;
  padding: 48px 0 32px;
  border-radius: 16px 16px 0 0;
  background: #e1e1e1;
}
.footer__title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  text-transform: uppercase;
  font-size: 24px;
  margin: 0 0 12px;
}
.footer__nav-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.footer__nav-link {
  color: #1E293B;
  display: inline-flex;
  font-size: 16px;
  margin: 0 0 10px;
}
.footer__nav-link:hover {
  color: #7B1B38;
}
.footer__nav-link:last-child {
  margin-bottom: 0;
}
.footer__group {
  margin: 0 0 16px;
}
.footer__group:last-child {
  margin-bottom: 0;
}
.footer__group-label {
  opacity: 0.8;
  margin: 0 0 8px;
  font-weight: 300;
}
.footer__contact-text {
  color: #1E293B;
  font-size: 16px;
}
.footer__contact-text:hover {
  color: #7B1B38;
}
.footer__phone {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 15px;
}
.footer__phone-tg {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  color: #1E293B;
  background: #7B1B38;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 12px 0 0;
}
.footer__phone-tg:hover {
  color: #1E293B;
}
.footer__phone-tg-icon {
  width: 18px;
  height: 18px;
  fill: currentColor;
  margin: 0 0 0 -2px;
}
.footer__phone-group {
  flex: 1 1;
  display: flex;
  flex-direction: column;
}
.footer__phone-text {
  color: #1E293B;
  font-size: 18px;
  font-weight: 500;
}
.footer__phone-text:hover {
  color: #7B1B38;
}
.footer__bottom {
  padding: 24px 0;
  background: #F8FAFC;
}
.footer__info {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.footer__copyright {
  font-weight: 600;
}
.footer__developers-link {
  color: #7B1B38;
}
.footer__up {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  margin: 0 0 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1E293B;
  background: #FFFFFF;
  border-radius: 8px;
}
.footer__up-icon {
  fill: currentColor;
  width: 24px;
  height: 24px;
  pointer-events: none;
  transform: rotate(180deg);
}
.footer__emails-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 12px;
}
.footer__email-item {
  margin-bottom: 8px;
}
.footer__email-desc {
  display: block;
  font-size: 12px;
  color: #64748B;
  margin-top: 2px;
}
.footer__contact-desc {
  font-size: 12px;
  color: #64748B;
  margin-left: 8px;
}
.footer__socials {
  display: flex;
  align-items: center;
  gap: 12px;
}
.footer__social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: #F8FAFC;
  border: 1.5px solid #7B1B38;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer__social:hover {
  transform: translateY(-6px);
}
.footer__social-ico {
  width: 20px;
  height: 20px;
  color: #7B1B38;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 1023px) {
  .footer {
    margin-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .footer__col:last-child {
    margin-bottom: 0;
  }
  .footer__copyright {
    margin: 0 0 8px;
  }
}
@media (min-width: 768px) {
  .footer__row {
    display: flex;
    flex-wrap: wrap;
    margin: -20px -10px;
  }
  .footer__col {
    width: 50%;
  }
  .footer__bottom {
    padding: 32px 0;
  }
  .footer__info {
    position: relative;
    align-items: center;
  }
  .footer__info-row {
    display: flex;
    align-items: center;
    flex: 1 1;
    margin: 0 -10px;
  }
  .footer__copyright {
    width: 50%;
    padding: 0 10px;
  }
  .footer__developers {
    padding: 0 10px;
  }
  .footer__up {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
@media (min-width: 1024px) {
  .footer__row {
    margin: -10px;
  }
  .footer__col {
    width: 25%;
    padding: 10px;
  }
  .footer__title {
    font-size: 28px;
  }
}
@media (min-width: 1280px) {
  .footer__top {
    border-radius: 24px 24px 0 0;
    padding: 64px 0 40px;
  }
  .footer__title {
    font-size: 32px;
    margin-bottom: 16px;
  }
  .footer__nav-link {
    font-size: 18px;
  }
  .footer__group {
    margin-bottom: 24px;
  }
  .footer__group-label {
    margin-bottom: 12px;
  }
  .footer__phone-text {
    font-size: 16px;
  }
  .footer__up {
    width: 48px;
    height: 48px;
  }
  .footer__up-icon {
    width: 28px;
    height: 28px;
  }
}
@media (min-width: 1368px) {
  .footer__top {
    border-radius: 32px 32px 0 0;
    padding: 80px 0 40px;
  }
  .footer__title {
    font-size: 32px;
  }
  .footer__group {
    margin-bottom: 32px;
  }
  .footer__group-label {
    font-size: 18px;
  }
  .footer__contact-text {
    font-size: 18px;
  }
  .footer__phone-text {
    font-size: 18px;
  }
}

.hero {
  background: linear-gradient(135deg, #f5f7fa 0%, #e9edf2 100%);
  padding: 40px 20px;
  position: relative;
  overflow: hidden;
}
.hero__check-wrapper {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.hero__check-svg {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}
.hero__check-svg.pulse {
  animation: pulse 2s ease-in-out 1.5s infinite;
}
.hero__check-circle {
  fill: none;
  stroke: #ffffff;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-dasharray: 283;
  stroke-dashoffset: 283;
  animation: drawCircle 0.8s ease forwards;
}
.hero__check-mark {
  fill: none;
  stroke: #7B1B38;
  stroke-width: 6;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 50;
  stroke-dashoffset: 50;
  animation: drawCheck 0.6s ease 0.6s forwards;
}
.hero__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 16px;
}
.hero__preview {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  transition: opacity 0.5s ease;
}
.hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 2;
}
@media (max-width: 768px) {
  .hero {
    padding: 30px 20px;
  }
}
@media (max-width: 640px) {
  .hero {
    padding: 20px 16px;
    padding-top: 40px;
  }
}
.hero__container {
  max-width: 90%;
  margin: 0 auto;
  width: 100%;
}
.hero__grid {
  display: flex;
  gap: 24px;
  min-height: 547px;
}
@media (max-width: 1024px) {
  .hero__grid {
    flex-direction: column;
    gap: 20px;
  }
}
@media (max-width: 640px) {
  .hero__grid {
    gap: 16px;
  }
}
.hero__main {
  flex: 0 0 70%;
  overflow: hidden;
  display: flex;
  align-items: center;
  position: relative;
  min-height: 500px;
  animation-name: LeftToRight;
  animation-duration: 2s;
}
.hero__main--background {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: brightness(0.6);
}
@media (max-width: 1024px) {
  .hero__main {
    flex: 1 1 auto;
  }
}
.hero__main::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -20%;
  width: 300px;
  height: 300px;
  background: rgba(123, 27, 56, 0.05);
  border-radius: 50%;
  z-index: 0;
}
.hero__main::after {
  content: "";
  position: absolute;
  bottom: -30%;
  left: -10%;
  width: 250px;
  height: 250px;
  background: rgba(123, 27, 56, 0.03);
  border-radius: 50%;
  z-index: 0;
}
.hero__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 900px;
  padding: 25px;
  border-radius: 10px;
  margin-inline: 35px;
  animation-name: textShow;
  animation-duration: 3s;
}
@media (max-width: 1024px) {
  .hero__content {
    padding: 40px;
  }
}
@media (max-width: 768px) {
  .hero__content {
    padding: 32px 24px;
  }
}
@media (max-width: 640px) {
  .hero__content {
    padding: 24px 20px;
    margin-inline: 0;
  }
}
.hero__title {
  font-size: 37px;
  font-weight: 700;
  line-height: 1.2;
  color: #ffffff;
  margin-bottom: 20px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}
.hero__title span {
  font-family: inherit;
  color: #7B1B38;
  background: linear-gradient(135deg, #7B1B38, rgb(206.64, 45.36, 94.08));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowPulse 2s ease-in-out 1.2s infinite;
}
@media (max-width: 1024px) {
  .hero__title {
    font-size: 37px;
  }
}
@media (max-width: 768px) {
  .hero__title {
    font-size: 32px;
    margin-bottom: 16px;
  }
}
@media (max-width: 640px) {
  .hero__title {
    font-size: 28px;
  }
}
.hero__description {
  font-size: 18px;
  line-height: 1.5;
  color: #ffffff;
  margin-bottom: 32px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}
@media (max-width: 768px) {
  .hero__description {
    font-size: 16px;
    margin-bottom: 28px;
  }
}
.hero__description span {
  font-family: inherit;
  color: #7B1B38;
  background: linear-gradient(135deg, #7B1B38, rgb(206.64, 45.36, 94.08));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowPulse 2s ease-in-out 1.2s infinite;
}
.hero__buttons {
  display: flex;
  position: absolute;
  background: linear-gradient(135deg, #f5f7fa 0%, #e9edf2 100%);
  bottom: 0;
  right: 0;
  gap: 16px;
  z-index: 5;
  flex-wrap: wrap;
  padding: 10px;
  border-radius: 16px 0 0 0;
}
.hero__buttons::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: radial-gradient(circle at 0 100%, transparent 68%, rgba(245, 247, 250, 0.3) 70%, #f5f7fa 75%);
  transform: translate(-100%, 0) rotate(90deg);
  pointer-events: none;
  z-index: 1;
}
.hero__buttons::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background: radial-gradient(circle at 0 100%, transparent 68%, rgba(245, 247, 250, 0.3) 70%, #e9edf2 75%);
  transform: translate(0, -100%) rotate(90deg);
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 640px) {
  .hero__buttons {
    gap: 12px;
  }
}
.hero__btn {
  padding: 14px 48px;
  font-size: 16px;
  font-weight: 600;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
}
@media (max-width: 640px) {
  .hero__btn {
    padding: 12px 8px;
    font-size: 14px;
    flex: 1;
  }
}
.hero__btn--primary {
  background: #7B1B38;
  color: white;
}
.hero__btn--primary:hover {
  background: rgb(81.18, 17.82, 36.96);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(123, 27, 56, 0.3);
}
.hero__btn--secondary {
  background: transparent;
  color: #7B1B38;
  border: 2px solid #7B1B38;
}
.hero__btn--secondary:hover {
  background-color: #7B1B38;
  color: #FFFFFF;
  transform: translateY(-2px);
}
.hero__stats {
  display: flex;
  gap: 40px;
}
@media (max-width: 640px) {
  .hero__stats {
    gap: 24px;
    flex-wrap: wrap;
  }
}
.hero__stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.hero__stat-value {
  font-size: 32px;
  font-weight: 700;
  color: #7B1B38;
}
@media (max-width: 768px) {
  .hero__stat-value {
    font-size: 28px;
  }
}
.hero__stat-label {
  font-size: 14px;
  color: #c2c2c2;
}
.hero__sidebar {
  flex: 0 0 30%;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 1024px) {
  .hero__sidebar {
    flex: 1 1 auto;
    flex-direction: row;
    gap: 20px;
  }
}
@media (max-width: 768px) {
  .hero__sidebar {
    flex-direction: column;
  }
}
.hero__card {
  background: rgb(85, 85, 85);
  border-radius: 16px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  padding: 24px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.hero__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}
.hero__card__row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
}
.hero__card--small {
  flex: 2 2 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #e1e1e1;
  animation-name: TopToBottom;
  animation-duration: 2s;
}
.hero__card--small::before {
  content: "";
  position: absolute;
  width: 620px;
  height: 420px;
  right: -150px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(123, 27, 56, 0.9) 0%, rgba(123, 27, 56, 0.45) 35%, rgba(123, 27, 56, 0) 75%);
  filter: blur(20px);
  pointer-events: none;
}
@media (max-width: 1024px) {
  .hero__card--small {
    flex: 1;
  }
}
.hero__card--large {
  flex: 3 3 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #e1e1e1;
  color: #1E293B;
  animation-name: BottomToTop;
  animation-duration: 2s;
}
.hero__card--large::before {
  content: "";
  position: absolute;
  width: 620px;
  height: 420px;
  right: -150px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(123, 27, 56, 0.9) 0%, rgba(123, 27, 56, 0.45) 35%, rgba(123, 27, 56, 0) 75%);
  filter: blur(20px);
  pointer-events: none;
}
.hero__card--large .hero__card-new-price {
  font-size: 28px;
}
.hero__card-icon {
  width: 56px;
  height: 56px;
  background: rgba(123, 27, 56, 0.1);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7B1B38;
}
.hero__card-icon svg {
  width: 28px;
  height: 28px;
}
.hero__card-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.2);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 16px;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 4;
}
.hero__card-title {
  font-size: 20px;
  font-weight: 700;
  color: #1E293B;
  margin-bottom: 12px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
  z-index: 4;
}
@media (max-width: 640px) {
  .hero__card-title {
    font-size: 18px;
  }
}
.hero__card-text {
  font-size: 14px;
  color: #1E293B;
  line-height: 1.4;
  margin-bottom: 16px;
  z-index: 4;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}
.hero__card-price {
  margin-bottom: 20px;
  z-index: 4;
}
.hero__card-old-price {
  font-size: 22px;
  text-decoration: line-through;
  color: #c2c2c2;
  margin-right: 12px;
  z-index: 4;
}
.hero__card-new-price {
  font-size: 30px;
  font-weight: 700;
  color: #7B1B38;
  z-index: 4;
}
.hero__card-btn {
  background: white;
  color: #7B1B38;
  border: none;
  padding: 12px 20px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
  z-index: 4;
}
.hero__card-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.hero__card--large .hero__card-btn {
  background: white;
  color: #7B1B38;
}

@media (max-width: 1024px) {
  .hero__sidebar {
    min-height: auto;
  }
  .hero__card--small, .hero__card--large {
    flex: 1;
    min-height: 200px;
  }
}
@media (max-width: 640px) {
  .hero__card {
    padding: 20px;
  }
  .hero__card-icon {
    width: 48px;
    height: 48px;
  }
  .hero__card-new-price {
    font-size: 22px;
  }
}
.hero__card {
  position: relative;
  overflow: hidden;
  background: rgb(85, 85, 85);
  border-radius: 16px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  padding: 24px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  min-height: 200px;
  z-index: 1;
}
.hero__card-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
  border-radius: 16px;
}
.hero__card-media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 2;
}
.hero__card-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  transition: opacity 0.5s ease;
}
.hero__card-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 3;
  border-radius: 16px;
  transition: background 0.3s ease;
}
.hero__card:hover .hero__card-overlay {
  background: rgba(0, 0, 0, 0.3);
}
.hero__card-badge, .hero__card-icon-wrapper, .hero__card-title, .hero__card-text, .hero__card-stats, .hero__card-link {
  position: relative;
  z-index: 4;
}
.hero__card-icon-wrapper {
  margin-bottom: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  border-radius: 14px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid rgba(255, 255, 255, 0.1);
}
@media (max-width: 640px) {
  .hero__card-icon-wrapper {
    width: 48px;
    height: 48px;
  }
}
.hero__card-icon {
  width: 34px;
  height: 34px;
  fill: currentColor;
  color: white;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 640px) {
  .hero__card-icon {
    width: 28px;
    height: 28px;
  }
}
.hero__card-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 16px;
  width: -moz-fit-content;
  width: fit-content;
  color: white;
  position: relative;
  z-index: 4;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.hero__card-title {
  font-size: 20px;
  font-weight: 700;
  color: white;
  margin-bottom: 12px;
  position: relative;
  z-index: 4;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}
@media (max-width: 640px) {
  .hero__card-title {
    font-size: 18px;
  }
}
.hero__card-text {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.4;
  margin-bottom: 16px;
  position: relative;
  z-index: 4;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
}
.hero__card-stats {
  display: flex;
  gap: 24px;
  margin: 12px 0 16px;
  position: relative;
  z-index: 4;
}
@media (max-width: 640px) {
  .hero__card-stats {
    gap: 16px;
  }
}
.hero__card-stat {
  display: flex;
  flex-direction: column;
}
.hero__card-stat-value {
  font-size: 20px;
  font-weight: 700;
  color: white;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}
@media (max-width: 640px) {
  .hero__card-stat-value {
    font-size: 18px;
  }
}
.hero__card-stat-label {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.7);
}
@media (max-width: 640px) {
  .hero__card-stat-label {
    font-size: 11px;
  }
}
.hero__card-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  color: white;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  z-index: 4;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.hero__card-link:hover {
  background: rgba(255, 255, 255, 0.3);
  transform: translateY(-2px);
  text-decoration: none;
  color: white;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
.hero__card-link svg {
  flex-shrink: 0;
}
.hero__card-link--video {
  background: rgba(255, 0, 0, 0.7);
  backdrop-filter: blur(10px);
  border-color: rgba(255, 0, 0, 0.3);
}
.hero__card-link--video:hover {
  background: rgba(255, 0, 0, 0.9);
  box-shadow: 0 4px 20px rgba(255, 0, 0, 0.3);
}
@media (max-width: 640px) {
  .hero__card-link {
    padding: 8px 16px;
    font-size: 13px;
    width: 100%;
    justify-content: center;
  }
}
.hero__card--small {
  flex: 2 2 auto;
  min-height: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  animation-name: TopToBottom;
  animation-duration: 2s;
}
.hero__card--small .hero__card-icon-wrapper {
  background: rgba(0, 191, 255, 0.2);
  border-color: rgba(0, 191, 255, 0.2);
}
.hero__card--small .hero__card-icon-wrapper .hero__card-icon {
  color: #00bfff;
}
.hero__card--small .hero__card-badge {
  background: rgba(0, 191, 255, 0.2);
  border-color: rgba(0, 191, 255, 0.2);
  color: #00bfff;
}
.hero__card--small .hero__card-link {
  background: rgba(0, 191, 255, 0.3);
  border-color: rgba(0, 191, 255, 0.2);
}
.hero__card--small .hero__card-link:hover {
  background: rgba(0, 191, 255, 0.5);
}
@media (max-width: 1024px) {
  .hero__card--small {
    flex: 1;
  }
}
.hero__card--large {
  flex: 3 3 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  animation-name: BottomToTop;
  animation-duration: 2s;
}
.hero__card--large .hero__card-icon-wrapper {
  background: rgba(255, 0, 0, 0.2);
  border-color: rgba(255, 0, 0, 0.2);
}
.hero__card--large .hero__card-icon-wrapper .hero__card-icon {
  color: #ff0000;
}
.hero__card--large .hero__card-badge {
  background: rgba(255, 0, 0, 0.2);
  border-color: rgba(255, 0, 0, 0.2);
  color: #ff0000;
}
.hero__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
.hero__card:hover .hero__card-icon-wrapper {
  transform: scale(1.05);
}

@media (max-width: 1024px) {
  .hero__sidebar {
    min-height: auto;
  }
  .hero__card--small, .hero__card--large {
    flex: 1;
    min-height: 200px;
  }
}
@media (max-width: 640px) {
  .hero__card {
    padding: 20px;
  }
  .hero__card-icon-wrapper {
    width: 48px;
    height: 48px;
  }
  .hero__card-new-price {
    font-size: 22px;
  }
}
@keyframes drawCircle {
  from {
    stroke-dashoffset: 283;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes drawCheck {
  from {
    stroke-dashoffset: 50;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes textShow {
  0% {
    transform: translateX(-1000px);
  }
  25% {
    transform: translateX(-1000px);
  }
  100% {
    transform: translateX(0px);
  }
}
.portfolio {
  position: relative;
}
@media (max-width: 640px) {
  .portfolio {
    padding: 40px 16px;
  }
}
.portfolio .swiper-slide {
  flex-shrink: 0;
}
@media (max-width: 640px) {
  .portfolio__title {
    font-size: 19px !important;
  }
}
.portfolio__title span {
  font-family: inherit;
  font-size: clamp(32px, 6vw, 40px);
  font-weight: 800;
  color: #7B1B38;
  background: linear-gradient(135deg, #7B1B38, rgb(206.64, 45.36, 94.08));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowPulse 2s ease-in-out 1.2s infinite;
}
.portfolio__span-color {
  font-family: inherit;
  font-size: clamp(24px, 6vw, 40px);
  font-weight: 800;
  color: #7B1B38;
  background: linear-gradient(135deg, #7B1B38, rgb(206.64, 45.36, 94.08));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowPulse 2s ease-in-out 1.2s infinite;
}
.portfolio__tabs {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-bottom: 48px;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .portfolio__tabs {
    gap: 12px;
    margin-bottom: 32px;
  }
}
.portfolio__tab {
  padding: 12px 32px;
  font-size: 16px;
  font-weight: 500;
  color: #666666;
  background: transparent;
  border: 1px solid #7B1B38;
  border-radius: 40px;
  cursor: pointer;
  overflow: hidden;
  position: relative;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 640px) {
  .portfolio__tab {
    padding: 10px 24px;
    font-size: 14px;
  }
}
.portfolio__tab::before {
  content: "";
  position: absolute;
  background: #fff;
  width: 32px;
  height: 300px;
  left: -120px;
  top: -70px;
  opacity: 0;
  transform: rotate(45deg);
  z-index: 5;
  pointer-events: none;
}
.portfolio__tab:hover {
  color: #FFFFFF;
  background: #7b1b38;
}
.portfolio__tab:hover::before {
  opacity: 0.5;
  animation: slideme 3.5s ease forwards;
}
.portfolio__tab--active {
  background: #7B1B38;
  color: #fff;
}
.portfolio__tab--active:hover {
  background: rgb(81.18, 17.82, 36.96);
  color: #fff;
}
.portfolio__slider {
  position: relative;
  margin-bottom: 40px;
}
.portfolio__slider-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  margin-top: 40px;
}
.portfolio__slider-prev, .portfolio__slider-next {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: white;
  border: 1px solid #eaeaea;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  color: #1a1a2e;
}
.portfolio__slider-prev:hover, .portfolio__slider-next:hover {
  background: #7B1B38;
  border-color: #7B1B38;
  color: white;
}
.portfolio__slider-prev svg, .portfolio__slider-next svg {
  width: 20px;
  height: 20px;
}
.portfolio__slider-pagination {
  display: flex;
  gap: 8px;
}
.portfolio__slider-pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: #eaeaea;
  opacity: 1;
  border-radius: 50%;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}
.portfolio__slider-pagination .swiper-pagination-bullet-active {
  background: #7B1B38;
  width: 28px;
  border-radius: 5px;
}

.portfolio-card {
  display: grid;
  grid-template-columns: 0.8fr 1fr;
  gap: 40px;
  background: white;
  border-radius: 24px;
  overflow: hidden;
}
.portfolio-card > * {
  min-width: 0;
}
@media (max-width: 1024px) {
  .portfolio-card {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.portfolio-card__gallery {
  width: 100%;
  min-width: 0;
}
.portfolio-card__main-slide {
  height: 100% !important;
}
.portfolio-card__main-slider {
  width: 100%;
  height: 450px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}
@media (max-width: 1024px) {
  .portfolio-card__main-slider {
    height: 420px;
  }
}
@media (max-width: 768px) {
  .portfolio-card__main-slider {
    height: 340px;
  }
}
@media (max-width: 640px) {
  .portfolio-card__main-slider {
    height: 260px;
  }
}
.portfolio-card__main-slider .swiper-wrapper,
.portfolio-card__main-slider .swiper-slide {
  width: 100%;
  height: 100%;
}
.portfolio-card__main-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.portfolio-card__nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  padding: 0 16px;
  z-index: 10;
  pointer-events: none;
}
.portfolio-card__prev, .portfolio-card__next {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  color: #1a1a2e;
  backdrop-filter: blur(4px);
  pointer-events: auto;
}
.portfolio-card__prev:hover, .portfolio-card__next:hover {
  background: #7B1B38;
  color: white;
}
.portfolio-card__prev svg, .portfolio-card__next svg {
  width: 20px;
  height: 20px;
}
.portfolio-card__thumbs {
  width: 100%;
  overflow: hidden;
  margin-top: 16px;
}
.portfolio-card__thumbs .swiper-wrapper {
  display: flex;
  align-items: center;
}
.portfolio-card__thumbs .swiper-slide {
  width: 120px !important;
  height: 120px;
  flex-shrink: 0;
  border-radius: 12px;
  overflow: hidden;
  opacity: 0.5;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media (max-width: 640px) {
  .portfolio-card__thumbs .swiper-slide {
    width: 60px !important;
    height: 60px;
  }
}
.portfolio-card__thumbs .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
}
.portfolio-card__thumb-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.portfolio-card__info {
  padding: 20px 20px 20px 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 1024px) {
  .portfolio-card__info {
    padding: 0 20px 20px 20px;
  }
}
.portfolio-card__title {
  font-size: 28px;
  font-weight: 700;
  color: #1a1a2e;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .portfolio-card__title {
    font-size: 24px;
  }
}
@media (max-width: 640px) {
  .portfolio-card__title {
    font-size: 20px;
  }
}
.portfolio-card__price {
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 16px 0;
  border-top: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
}
.portfolio-card__price-label {
  font-size: 14px;
  color: #666;
}
.portfolio-card__price-value {
  font-size: 28px;
  font-weight: 700;
  color: #7B1B38;
}
@media (max-width: 640px) {
  .portfolio-card__price-value {
    font-size: 24px;
  }
}
.portfolio-card__description {
  font-size: 16px;
  line-height: 1.5;
  color: #666;
}
@media (max-width: 640px) {
  .portfolio-card__description {
    font-size: 14px;
  }
}
.portfolio-card__prop {
  display: flex;
  gap: 12px;
  font-size: 14px;
}
.portfolio-card__prop-label {
  font-weight: 600;
  color: #1a1a2e;
  min-width: 85px;
}
.portfolio-card__prop-value {
  color: #666;
  flex: 1;
}
.portfolio-card__btn {
  background: #7B1B38;
  color: white;
  border: none;
  padding: 14px 32px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 10px;
  align-self: flex-start;
}
.portfolio-card__btn:hover {
  background: rgb(81.18, 17.82, 36.96);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}
@media (max-width: 640px) {
  .portfolio-card__btn {
    width: 100%;
    padding: 12px 24px;
    font-size: 14px;
  }
}

.faq {
  background: #f8f9fb;
  padding: 80px 20px 10px 20px;
  position: relative;
}
@media (max-width: 768px) {
  .faq {
    padding: 60px 20px;
  }
}
@media (max-width: 640px) {
  .faq {
    padding: 40px 20px 5px 20px;
  }
}
.faq__container {
  max-width: 1400px;
  margin: 0 auto;
}
.faq__header {
  text-align: center;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .faq__header {
    margin-bottom: 40px;
  }
}
.faq__title {
  font-size: 40px;
  font-weight: 700;
  color: #1a1a2e;
  margin-bottom: 16px;
}
@media (max-width: 1024px) {
  .faq__title {
    font-size: 32px;
  }
}
@media (max-width: 768px) {
  .faq__title {
    font-size: 28px;
  }
}
@media (max-width: 640px) {
  .faq__title {
    font-size: 24px;
  }
}
.faq__subtitle {
  font-size: 18px;
  color: #666666;
  max-width: 600px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .faq__subtitle {
    font-size: 16px;
  }
}
.faq__block {
  display: flex;
  gap: 60px;
  margin-bottom: 60px;
}
.faq__image {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  height: 100%;
  min-height: 400px;
}
@media (max-width: 768px) {
  .faq__image {
    min-height: 300px;
  }
}
.faq__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.faq__image-text {
  position: absolute;
  bottom: 30px;
  left: 30px;
  right: 30px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-radius: 16px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #7B1B38;
  font-weight: 600;
  font-size: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.faq__image-text svg {
  flex-shrink: 0;
}
.faq__image-text span {
  color: #1a1a2e;
}
.faq__accordion {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.faq__item {
  background: white;
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}
.faq__item:hover {
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}
.faq__question {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  background: white;
  border: none;
  cursor: pointer;
  font-size: 20px;
  font-weight: 600;
  color: #1a1a2e;
  text-align: left;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 640px) {
  .faq__question {
    padding: 16px 20px;
    font-size: 16px;
  }
}
.faq__question:hover {
  color: #7B1B38;
  background: rgba(123, 27, 56, 0.02);
}
.faq__question-text {
  flex: 1;
  padding-right: 16px;
}
.faq__icon {
  flex-shrink: 0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  color: #1a1a2e;
}
.faq__item--active .faq__icon {
  transform: rotate(45deg);
  color: #7B1B38;
}
.faq__answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq__item--active .faq__answer {
  max-height: 500px;
}
.faq__answer-content {
  padding: 0 24px 24px 24px;
  color: #666666;
  line-height: 1.6;
}
@media (max-width: 640px) {
  .faq__answer-content {
    padding: 0 20px 20px 20px;
  }
}
.faq__answer-content p {
  margin-bottom: 16px;
  font-size: 16px;
}
.faq__answer-content p:last-child {
  margin-bottom: 0;
}
.faq__answer-content ul {
  list-style: none;
  padding: 0;
  margin: 0 0 16px 0;
}
.faq__answer-content li {
  margin-bottom: 8px;
  font-size: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.faq__answer-content li:last-child {
  margin-bottom: 0;
}
.faq__contact {
  background: white;
  border-radius: 20px;
  padding: 32px 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  border: 1px solid #e5e5e5;
}
@media (max-width: 768px) {
  .faq__contact {
    padding: 24px 28px;
    flex-direction: column;
    text-align: center;
  }
}
.faq__contact-text {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 24px;
  font-weight: 600;
  color: #1a1a2e;
}
@media (max-width: 768px) {
  .faq__contact-text {
    font-size: 16px;
  }
}
.faq__contact-text svg {
  color: #7B1B38;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
}
.faq__contact-btn {
  background: #7B1B38;
  color: white;
  border: none;
  padding: 14px 36px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq__contact-btn:hover {
  background: rgb(81.18, 17.82, 36.96);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(123, 27, 56, 0.3);
}
@media (max-width: 640px) {
  .faq__contact-btn {
    width: 100%;
    padding: 12px 24px;
  }
}

.feature {
  padding-top: 50px;
  padding-bottom: 50px;
}
.feature__grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 768px) {
  .feature__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1280px) {
  .feature__grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.feature {
  /* ОБЁРТКА */
}
.feature__wrapper {
  position: relative;
}
.feature {
  /* КАРТОЧКА */
}
.feature__item {
  background: #FFFFFF;
  border-radius: 20px;
  padding: 24px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  cursor: default;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
}
.feature__item:hover {
  transform: translateY(-6px);
  box-shadow: 0 14px 35px rgba(123, 27, 56, 0.12);
}
.feature__item:hover + .feature__tooltip {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.feature__item:hover .feature__name {
  color: #7B1B38;
}
.feature__ico {
  width: 56px;
  height: 56px;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
}
.feature__name {
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  margin: 0;
  transition: all 0.3s ease;
}
.feature {
  /* ПОДСКАЗКА СНИЗУ */
}
.feature__tooltip {
  position: absolute;
  left: 0;
  top: calc(100% + 10px);
  width: 100%;
  background: #7B1B38;
  color: #fff;
  padding: 14px 16px;
  border-radius: 14px;
  font-size: 14px;
  line-height: 1.5;
  opacity: 0;
  transform: translateY(-6px);
  pointer-events: none;
  transition: all 0.4s ease;
  z-index: 10;
}

.messengers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.messengers__label {
  font-size: 16px;
  margin: 0 10px 0 0;
}
.messengers__row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -4px;
}
.messengers__link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  border-radius: 8px;
  width: 40px;
  height: 40px;
  margin: 0 4px;
  position: relative;
  overflow: hidden;
}
.messengers__link::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #FFFFFF;
  opacity: 0;
  transition: opacity 0.2s;
}
.messengers__link:hover {
  color: #FFFFFF;
}
.messengers__link:hover::after {
  opacity: 0.05;
}
.messengers__link--vk {
  background: #4d7198;
}
.messengers__link--wa {
  background: #2cb742;
}
.messengers__link--tg {
  background: #27a7e7;
}
.messengers__link-ico {
  width: 20px;
  height: 20px;
  fill: currentColor;
}
@media (min-width: 1024px) {
  .messengers__label {
    font-size: 18px;
    margin-right: 16px;
  }
  .messengers__row {
    margin: 0 -6px;
  }
  .messengers__link {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    margin: 0 6px;
  }
  .messengers__link-ico {
    width: 24px;
    height: 24px;
  }
}

.navigation {
  transform: translateX(-100%);
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  transition: transform 0.5s cubic-bezier(0.97, 0.04, 0.55, 0.97);
}
.navigation.--open {
  transform: translateX(0);
}
.navigation__bg {
  width: 100%;
  height: 100%;
  background: rgba(30, 41, 59, 0.5);
  position: fixed;
  left: 0;
  top: 0;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.navigation.--open .navigation__bg {
  opacity: 1;
}
.navigation__container {
  width: 100%;
  overflow-y: auto;
  background: #FFFFFF;
}
.navigation__container::-webkit-scrollbar {
  display: none;
}
.navigation__body {
  width: 100%;
  position: relative;
}
.navigation__close {
  width: 32px;
  height: 32px;
  top: 16px;
  right: 16px;
  position: absolute;
  color: #1E293B;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
}
.navigation__close:hover {
  color: #7B1B38;
}
.navigation__cross {
  color: inherit;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.navigation__search {
  width: 100%;
  margin-bottom: 32px;
}
.navigation__search-form {
  position: relative;
  border: 2px solid #E2E8F0;
  border-radius: 60px;
  background: #FFFFFF;
  overflow: hidden;
  padding: 12px 100px 12px 20px;
}
.navigation__search-input {
  width: 100%;
  height: 100%;
  border: none;
  outline: none;
  font-size: 14px;
}
.navigation__search-input:focus {
  outline: none;
}
.navigation__search-group {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}
.navigation__search-button {
  height: 100%;
  background: #7B1B38;
  color: #FFFFFF;
  padding: 0 20px;
  border-radius: 60px;
  cursor: pointer;
  border: none;
  display: flex;
  align-items: center;
  gap: 8px;
}
.navigation__search-button:hover {
  background: rgb(89.544, 19.656, 40.768);
}
.navigation__search-button-text {
  font-size: 14px;
  font-weight: 600;
}
.navigation__search-button-ico {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.navigation__contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 32px;
}
.navigation__group {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}
.navigation__group:last-child {
  margin-bottom: 0;
}
.navigation__group-circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #F8FAFC;
  color: #7B1B38;
  margin-right: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.navigation__group-ico {
  width: 20px;
  height: 20px;
  color: inherit;
  pointer-events: none;
}
.navigation__group-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
.navigation__text {
  color: #64748B;
  font-size: 14px;
  line-height: 1.4;
}
.navigation__phone {
  font-weight: 700;
  color: #1E293B;
  font-size: 16px;
  text-decoration: none;
}
.navigation__phone:hover {
  color: #7B1B38;
}
.navigation__button {
  width: 100%;
  margin-top: 32px;
  padding: 14px 24px;
  justify-content: center;
  background-color: #7B1B38;
  color: #FFFFFF;
  border-radius: 20px;
}
.navigation__messengers {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
}
.navigation__messenger {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #F8FAFC;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}
.navigation__messenger:hover {
  background: #7B1B38;
  transform: translateY(-2px);
}
.navigation__messenger:hover .messenger__ico {
  fill: #FFFFFF;
  stroke: #FFFFFF;
}
.navigation__messenger .messenger__ico {
  width: 22px;
  height: 22px;
  fill: #7B1B38;
  stroke: #7B1B38;
  transition: all 0.3s ease;
}

.nav__scroll {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: calc(100vh - 200px);
}
.nav__group {
  padding: 0;
}
.nav__list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 24px;
}
.nav__list:last-child {
  margin-bottom: 0;
}
.nav__col {
  width: 100%;
  position: relative;
  margin-bottom: 8px;
}
.nav__col:last-child {
  margin-bottom: 0;
}
.nav__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: #1E293B;
  line-height: 1;
  padding: 12px 0;
  width: 100%;
  transition: color 0.2s ease;
}
.nav__item.--open {
  color: #7B1B38;
}
.nav__item.--open .nav__item-ico {
  transform: rotate(180deg);
}
.nav__item-link {
  font-size: 16px;
  font-weight: 500;
  color: currentColor;
  text-decoration: none;
}
.nav__item-link:hover {
  color: currentColor;
}
.nav__item-ico {
  color: currentColor;
  width: 20px;
  height: 20px;
  transition: transform 0.2s ease;
  flex-shrink: 0;
  margin-left: 8px;
}
.nav__item-dropdown {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease;
}
.nav__item-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 8px 0 8px 16px;
}
.nav__item-subitem {
  padding: 8px 0;
}
.nav__item-sublink {
  color: #64748B;
  font-size: 14px;
  text-decoration: none;
}
.nav__item-sublink:hover {
  color: #7B1B38;
}

@media (min-width: 768px) {
  .navigation {
    display: none;
  }
}
@media (max-width: 767px) {
  .nav__scroll {
    margin: 0 -16px 0 0;
    padding: 0 14px 0 0;
  }
}
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.3s ease, opacity 0.3s ease;
}
.modal.is-active {
  visibility: visible;
  opacity: 1;
}
.modal.is-active .modal__container {
  transform: translateY(0);
  opacity: 1;
}
.modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
  cursor: pointer;
}
.modal__container {
  position: relative;
  width: 90%;
  max-width: 400px;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 20px 35px -8px rgba(0, 0, 0, 0.2);
  transform: translateY(-30px);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
  z-index: 1;
}
.modal__close {
  position: absolute;
  top: 16px;
  right: 20px;
  background: none;
  border: none;
  font-size: 28px;
  cursor: pointer;
  color: #999;
  transition: color 0.2s ease;
  z-index: 2;
  line-height: 1;
}
.modal__close:hover {
  color: #7B1B38;
}
.modal__content {
  position: relative;
  padding: 50px 24px 32px;
  text-align: center;
}
.modal__icon-wrapper {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 80px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 2;
}
.modal__icon {
  width: 48px;
  height: 48px;
  -o-object-fit: contain;
     object-fit: contain;
}
.modal__contacts {
  margin-top: 20px;
}
.modal__phones {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 32px;
}
.modal__phone {
  font-size: 18px;
  font-weight: 500;
  color: #333;
  text-decoration: none;
  transition: color 0.2s ease;
  display: inline-block;
}
.modal__phone:hover {
  color: #7B1B38;
}
.modal__social {
  display: flex;
  justify-content: center;
  gap: 20px;
}
.modal__social-link {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  border: 2px solid #7B1B38;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s ease;
  background: transparent;
}
.modal__social-link:hover {
  background: #7B1B38;
}
.modal__social-link:hover .modal__social-icon {
  color: #ffffff;
}
.modal__social-icon {
  width: 24px;
  height: 24px;
  fill: #7B1B38;
  transition: fill 0.25s ease;
}

@media (max-width: 480px) {
  .modal__container {
    max-width: 320px;
  }
  .modal__content {
    padding: 50px 20px 28px;
  }
  .modal__icon-wrapper {
    width: 70px;
    height: 70px;
    top: -35px;
  }
  .modal__icon {
    width: 40px;
    height: 40px;
  }
  .modal__phone {
    font-size: 16px;
  }
  .modal__social-link {
    width: 44px;
    height: 44px;
  }
}
.gallery-marquee {
  overflow: hidden;
}
.gallery-marquee__row {
  overflow: hidden;
  margin-bottom: 20px;
}
.gallery-marquee .swiper {
  overflow: hidden;
}
.gallery-marquee .swiper-wrapper {
  transition-timing-function: linear !important;
}
.gallery-marquee .swiper-slide {
  width: auto !important;
  flex-shrink: 0;
}
.gallery-marquee__item {
  width: 380px;
  height: 230px;
  border-radius: 20px;
  overflow: hidden;
}
.gallery-marquee__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.novelties {
  background: #FFFFFF;
  border-radius: 28px;
  position: relative;
}
.novelties__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: column;
  max-width: 1400px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .novelties__header {
    margin-inline: 20px;
  }
}
.novelties__title {
  margin-bottom: 10px;
  margin: 0;
  width: 100%;
  text-align: start;
}
.novelties__sub-title {
  font-size: 30px;
  border: 1px solid #7B1B38;
  padding: 2px 10px;
  border-radius: 15px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .novelties__sub-title {
    font-size: 17px;
  }
}
.novelties__heading {
  font-size: 32px;
  font-weight: 700;
  border-bottom: 3px solid #7B1B38;
  display: inline-block;
  color: #1E293B;
  margin: 0;
}
@media (max-width: 768px) {
  .novelties__heading {
    font-size: 28px;
  }
}
@media (max-width: 480px) {
  .novelties__heading {
    font-size: 24px;
  }
}
.novelties-slider-container {
  position: relative;
  padding: 0 40px;
}
@media (max-width: 768px) {
  .novelties-slider-container {
    padding: 0 30px;
  }
}
@media (max-width: 480px) {
  .novelties-slider-container {
    padding: 0 20px;
  }
}
.novelties .novelties-swiper {
  overflow: hidden;
  padding: 4px 0;
}
.novelties .novelties-swiper .swiper-wrapper {
  display: flex;
}
.novelties .novelties-swiper .swiper-slide {
  height: auto;
}
.novelties__arrows {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 40px;
  margin-bottom: 20px;
}
.novelties__arrow {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}
.novelties__arrow svg {
  width: 22px;
  height: 22px;
  stroke: #1E293B;
  stroke-width: 2;
  fill: none;
  transition: transform 0.3s ease, stroke 0.3s ease;
}
.novelties__arrow:hover {
  border: 2px solid #7B1B38;
  transform: scale(1.15);
}
.novelties__arrow:hover svg {
  color: #7B1B38;
  transform: scale(1.1);
}
.novelties__arrow.disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}
.novelties__arrow.disabled:hover {
  background: #FFFFFF;
  border-color: #E2E8F0;
  transform: scale(1);
}
.novelties__arrow.disabled:hover svg {
  stroke: #1E293B;
  transform: scale(1);
}
.novelties__arrow--prev:hover svg {
  transform: translateX(-3px) scale(1.1);
}
.novelties__arrow--next:hover svg {
  transform: translateX(3px) scale(1.1);
}
.novelties__arrow-text {
  display: none;
}
.novelties__nav {
  display: none;
}
.novelties__pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 0;
}
.novelties__pagination-wrapper {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}
.novelties__pagination-btn {
  min-width: 40px;
  height: 40px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #1E293B;
  cursor: pointer;
  transition: all 0.3s ease;
}
.novelties__pagination-btn:hover {
  background: #F8FAFC;
  border-color: #7B1B38;
  color: #7B1B38;
  transform: translateY(-2px);
}
.novelties__pagination-btn.active {
  background: transparent;
  border: 3px solid #7B1B38;
  color: #7B1B38;
  box-shadow: 0 4px 12px rgba(123, 27, 56, 0.3);
}
.novelties__pagination-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  font-size: 14px;
  color: #64748B;
}
.novelties .product-card {
  cursor: pointer;
  height: 100%;
}
.novelties .product-card .product-image-wrapper {
  border-radius: 30px;
  overflow: hidden;
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
  background: #FFFFFF;
}
.novelties .product-card:hover .product-image-wrapper {
  transform: translateY(-8px);
  box-shadow: 0 20px 28px -12px rgba(0, 0, 0, 0.15);
}
.novelties .product-card .product-image {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  perspective: 1400px;
  overflow: hidden;
  border-radius: 20px;
  background: #F8FAFC;
}
.novelties .product-card .product-image__inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.novelties .product-card:hover .product-image__inner {
  transform: rotateY(180deg);
}
.novelties .product-card .product-image__primary,
.novelties .product-card .product-image__hover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  border-radius: 20px;
}
.novelties .product-card .product-image__primary {
  transform: rotateY(0deg);
  z-index: 2;
}
.novelties .product-card .product-image__hover {
  transform: rotateY(180deg);
}
.novelties .product-card .product-info {
  padding: 16px 8px 0;
}
.novelties .product-card .product-info .product-title {
  font-size: 24px;
  font-weight: 700;
  color: #1E293B;
  margin-bottom: 8px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}
.novelties .product-card .product-info .product-description {
  font-size: 20px;
  color: #5c142a;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}
.novelties .product-card .product-info .product-card-title {
  font-size: 24px;
  font-weight: 700;
  color: #1E293B;
  margin-bottom: 8px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}
.novelties .product-card .product-info .product-card-description {
  font-size: 20px;
  color: #5c142a;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}
.novelties .product-card .product-price {
  position: relative;
  margin-top: 14px;
  padding: 12px 20px;
  border: 2px solid #7B1B38;
  border-radius: 14px;
  background: rgba(123, 27, 56, 0.03);
  color: #7B1B38;
  font-size: 15px;
  font-weight: 900;
  text-align: center;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
  box-shadow: 0 4px 16px rgba(123, 27, 56, 0.08);
}
.novelties .product-card .product-price::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -120%;
  width: 80px;
  height: 220%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.15) 35%, rgba(255, 255, 255, 0.95) 50%, rgba(255, 255, 255, 0.15) 65%, rgba(255, 255, 255, 0) 100%);
  transform: rotate(18deg);
  filter: blur(2px);
  opacity: 0;
  pointer-events: none;
}
.novelties .product-card .product-price:hover {
  transform: translateY(-3px);
  background: rgba(123, 27, 56, 0.06);
  box-shadow: 0 12px 28px rgba(123, 27, 56, 0.18);
}
.novelties .product-card .product-price:hover::before {
  opacity: 1;
  animation: productPriceShine 1s ease forwards;
}

@keyframes productPriceShine {
  from {
    left: -120%;
  }
  to {
    left: 160%;
  }
}
@keyframes arrowExpand {
  0% {
    width: 48px;
    opacity: 0;
  }
  100% {
    width: 68px;
    opacity: 1;
  }
}
@media (max-width: 768px) {
  .novelties {
    padding: 24px 20px 32px;
  }
  .novelties__arrow {
    width: 42px;
    height: 42px;
  }
  .novelties__arrow svg {
    width: 18px;
    height: 18px;
  }
  .novelties__pagination-btn {
    min-width: 36px;
    height: 36px;
    font-size: 13px;
  }
}
@media (max-width: 480px) {
  .novelties {
    padding: 0px;
  }
  .novelties__arrows {
    gap: 12px;
    margin-top: 32px;
  }
  .novelties__arrow {
    width: 36px;
    height: 36px;
  }
  .novelties__arrow svg {
    width: 16px;
    height: 16px;
  }
  .novelties__pagination-btn {
    min-width: 32px;
    height: 32px;
    font-size: 12px;
  }
  .novelties__pagination-dots {
    width: 32px;
    height: 32px;
    font-size: 12px;
  }
}
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(4px);
  z-index: 1000;
  display: none;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.modal-overlay.active {
  display: flex;
  opacity: 1;
}

.product-modal {
  background: #FFFFFF;
  border-radius: 28px;
  max-width: 1600px;
  width: 90%;
  max-height: 90vh;
  position: relative;
  animation: modalSlideIn 0.3s ease;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.product-modal::-webkit-scrollbar {
  width: 6px;
}
.product-modal::-webkit-scrollbar-track {
  background: #F8FAFC;
  border-radius: 10px;
}
.product-modal::-webkit-scrollbar-thumb {
  background: #7B1B38;
  border-radius: 10px;
}

@keyframes modalSlideIn {
  from {
    transform: translateY(30px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
.modal-close {
  position: absolute;
  top: -10px;
  right: -10px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  z-index: 10;
}
.modal-close:hover {
  background: #EF4444;
  border-color: #EF4444;
}
.modal-close:hover svg {
  stroke: #FFFFFF;
}
.modal-close svg {
  width: 20px;
  height: 20px;
  stroke: #1E293B;
  stroke-width: 2;
  transition: stroke 0.2s ease;
}

.modal-grid {
  display: flex;
  gap: 40px;
  padding: 40px;
  flex-wrap: wrap;
}

.modal-gallery {
  flex: 1;
  min-width: 300px;
}

.main-image {
  width: 100%;
  aspect-ratio: 1/1;
  background: #F8FAFC;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 16px;
  border: 1px solid #E2E8F0;
}
.main-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.thumbnail-list {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 8px 0;
  scrollbar-width: thin;
}
.thumbnail-list::-webkit-scrollbar {
  height: 4px;
}
.thumbnail-list::-webkit-scrollbar-track {
  background: #E2E8F0;
  border-radius: 10px;
}
.thumbnail-list::-webkit-scrollbar-thumb {
  background: #7B1B38;
  border-radius: 10px;
}

.thumbnail {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
  background: #F8FAFC;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid transparent;
  transition: all 0.2s ease;
}
.thumbnail.active {
  border-color: #7B1B38;
  box-shadow: 0 0 0 2px rgba(123, 27, 56, 0.2);
}
.thumbnail:hover:not(.active) {
  border-color: #64748B;
  transform: translateY(-2px);
}
.thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.modal-info {
  flex: 1;
  min-width: 320px;
}

.product-badge {
  display: inline-block;
  background: #EEF2FF;
  color: #7B1B38;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 100px;
  margin-bottom: 16px;
}

.product-title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 26px;
  font-weight: 600;
  color: #1E293B;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.product-subtitle {
  font-size: 14px;
  color: #64748B;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid #E2E8F0;
}

.marketplace-buttons {
  display: flex;
  gap: 16px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}

.marketplace-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 0px;
  border-radius: 60px;
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.3s ease;
  border: 2px solid;
  cursor: pointer;
}
.marketplace-btn--wb {
  background: transparent;
  border-color: #7B1B38;
  color: #7B1B38;
}
.marketplace-btn--wb:hover {
  background: #ed3cca;
  border-color: #ed3cca;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(237, 60, 202, 0.3);
  color: #FFFFFF;
}
.marketplace-btn--ozon {
  background: transparent;
  border-color: #7B1B38;
  color: #7B1B38;
}
.marketplace-btn--ozon:hover {
  background: #005bff;
  border-color: #005bff;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 91, 255, 0.3);
  color: #FFFFFF;
}

.product-tabs {
  margin-top: 24px;
}

.tabs-header {
  display: flex;
  gap: 8px;
  border-bottom: 1px solid #E2E8F0;
  margin-bottom: 20px;
}

.tab-btn {
  padding: 12px 20px;
  background: none;
  border: none;
  font-size: 16px;
  font-weight: 600;
  color: #64748B;
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}
.tab-btn:hover {
  color: #7B1B38;
}
.tab-btn.active {
  color: #7B1B38;
}
.tab-btn.active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background: #7B1B38;
  border-radius: 2px;
}

.tab-content {
  display: none;
  font-size: 14px;
  line-height: 1.6;
  color: #1E293B;
  max-height: 400px; /* или calc(100vh - 300px) */
  overflow-y: auto;
  padding-right: 8px;
}
.tab-content.active {
  display: block;
}
.tab-content p {
  margin-bottom: 12px;
}
.tab-content ul,
.tab-content ol {
  padding-left: 20px;
  margin: 12px 0;
}
.tab-content li {
  margin-bottom: 8px;
}
.tab-content strong {
  color: #7B1B38;
}

.product-features {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #E2E8F0;
}

.feature-item {
  flex: 1;
  text-align: center;
  padding: 12px;
  background: #F8FAFC;
  border-radius: 12px;
  border: 1px solid #E2E8F0;
}

.feature-value {
  font-size: 24px;
  font-weight: 700;
  color: #7B1B38;
}

.feature-label {
  font-size: 12px;
  color: #64748B;
  margin-top: 4px;
}

.wholesale-btn {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 14px;
  border-radius: 12px;
  font-weight: 600;
  font-size: 14px;
  background: linear-gradient(135deg, #7B1B38, #5c142a);
  color: #fff;
  border: none;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.wholesale-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(28, 78, 216, 0.35);
}

/* 💡 блик */
.wholesale-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.35), transparent);
  transform: skewX(-20deg);
  /* 🔥 ВАЖНО: постоянная анимация */
  animation: shine 2.5s infinite;
}

.prop-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 6px 0;
}

/* 🔑 ключ (название характеристики) */
.prop-key {
  flex: 0 0 220px; /* фикс ширина как в маркетплейсах */
  color: #6b7280;
  font-size: 14px;
  position: relative;
}

/* двоеточие как в DNS */
.prop-key::after {
  content: ":";
  margin-left: 2px;
}

/* значение */
.prop-value {
  flex: 1;
  font-size: 14px;
  color: #111827;
  word-break: break-word;
}

/* 🚀 движение блика */
@keyframes shine {
  0% {
    left: -105%;
  }
  100% {
    left: 125%;
  }
}
@media (max-width: 768px) {
  .modal-grid {
    padding: 24px;
    gap: 24px;
  }
  .product-title {
    font-size: 24px;
  }
  .marketplace-buttons {
    flex-direction: column;
  }
  .tabs-header {
    overflow-x: auto;
    overflow-y: clip;
  }
  .tab-btn {
    white-space: nowrap;
  }
  .thumbnail {
    width: 60px;
    height: 60px;
  }
  .product-features {
    gap: 12px;
  }
  .feature-value {
    font-size: 18px;
  }
}
@media (max-width: 822px) {
  .product-modal {
    overflow-y: auto;
  }
  .modal-close {
    top: 12px;
    right: 16px;
    width: 32px;
    height: 32px;
  }
}
@media (max-width: 480px) {
  .modal-grid {
    padding: 16px;
    gap: 16px;
  }
  .modal-close {
    top: 12px;
    right: 16px;
    width: 32px;
    height: 32px;
  }
  .product-modal {
    overflow-y: auto;
  }
  .product-title {
    font-size: 20px;
  }
  .thumbnail {
    width: 50px;
    height: 50px;
  }
  .tab-btn {
    padding: 8px 16px;
    font-size: 14px;
  }
  .product-features {
    gap: 8px;
  }
  .feature-item {
    padding: 8px;
  }
  .feature-value {
    font-size: 16px;
  }
  .feature-label {
    font-size: 10px;
  }
  .prop-row {
    flex-direction: column;
    gap: 2px;
  }
  .prop-key {
    flex: none;
  }
  .prop-key::after {
    content: "";
  }
}
.about-company {
  background: #f8f9fb;
  border-radius: 28px;
  padding: 48px 56px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  overflow-x: hidden;
  box-sizing: border-box;
  color: #1E293B;
}
.about-company__heading {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 48px;
  font-weight: 400;
  letter-spacing: 1px;
  color: #1E293B;
  margin-bottom: 40px;
  text-transform: uppercase;
  border-left: 5px solid #7B1B38;
  padding-left: 20px;
  word-break: break-word;
}
.about-company__grid {
  display: flex;
  gap: 48px;
  flex-wrap: wrap;
  width: 100%;
}
.about-company__left {
  flex: 0.8;
  min-width: 280px;
  max-width: 100%;
  overflow: hidden;
}
.about-company .video-wrapper {
  background: #1E293B;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 16/9;
  margin-bottom: 24px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
  width: 100%;
}
.about-company .video-wrapper video,
.about-company .video-wrapper iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.about-company .about-swiper {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.about-company .about-swiper__slide {
  aspect-ratio: 4/3;
  border-radius: 16px;
  overflow: hidden;
  background: #F8FAFC;
  transition: transform 0.3s;
}
.about-company .about-swiper__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.3s;
}
.about-company .about-swiper__slide:hover img {
  transform: scale(1.05);
}
.about-company .about-swiper .swiper-wrapper {
  transition-timing-function: linear !important;
}
.about-company .swiper-button-prev,
.about-company .swiper-button-next {
  width: 40px;
  height: 40px;
  background: #FFFFFF;
  border-radius: 50%;
  border: 1px solid #E2E8F0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  padding: 10px;
  color: #0d0d0d;
}
.about-company .swiper-button-prev::after,
.about-company .swiper-button-next::after {
  font-size: 18px;
  font-weight: bold;
  color: #1E293B;
}
.about-company .swiper-button-prev:hover,
.about-company .swiper-button-next:hover {
  color: white;
  background: #7B1B38;
  border-color: #7B1B38;
}
.about-company .swiper-button-prev:hover::after,
.about-company .swiper-button-next:hover::after {
  color: #FFFFFF;
}
@media (max-width: 768px) {
  .about-company .swiper-button-prev,
  .about-company .swiper-button-next {
    padding: 5px;
  }
}
.about-company .swiper-button-prev {
  left: 0;
}
.about-company .swiper-button-next {
  right: 0;
}
.about-company .swiper-pagination {
  position: relative;
  margin-top: 20px;
}
.about-company .swiper-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #E2E8F0;
  opacity: 1;
}
.about-company .swiper-pagination .swiper-pagination-bullet-active {
  background: #7B1B38;
  width: 24px;
  border-radius: 4px;
}
.about-company__right {
  flex: 1.4;
  min-width: 280px;
  max-width: 100%;
  overflow-x: hidden;
  word-break: break-word;
  animation: slideInFromRight 0.6s ease-out;
}
.about-company .company-title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 40px;
  font-weight: 400;
  letter-spacing: 1px;
  color: #1E293B;
  margin-bottom: 20px;
  text-transform: uppercase;
  word-break: break-word;
}
.about-company .company-title span {
  font-family: inherit;
  font-weight: 800;
  color: #7B1B38;
  background: linear-gradient(135deg, #7B1B38, rgb(206.64, 45.36, 94.08));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowPulse 2s ease-in-out 1.2s infinite;
}
.about-company .company-description {
  font-size: 18px;
  line-height: 1.6;
  color: #1E293B;
  word-break: break-word;
  overflow-wrap: break-word;
  margin-top: 24px;
}
.about-company .company-description p {
  margin-bottom: 16px;
}
.about-company .company-description p:last-child {
  margin-bottom: 0;
}
.about-company .company-description ul, .about-company .company-description ol {
  margin: 12px 0 12px 20px;
  padding-left: 0;
}
.about-company .company-description li {
  margin-bottom: 8px;
  word-break: break-word;
}
.about-company .company-description strong {
  color: #7B1B38;
}

@keyframes slideInFromRight {
  0% {
    opacity: 0;
    transform: translateX(850px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@media (max-width: 1000px) {
  .about-company {
    padding: 32px 28px;
  }
  .about-company__heading {
    font-size: 38px;
  }
  .about-company .company-title {
    font-size: 30px;
  }
  .about-company .company-description {
    font-size: 15px;
  }
  .about-company .about-swiper {
    overflow: hidden;
  }
}
@media (max-width: 768px) {
  .about-company {
    padding: 24px 20px;
  }
  .about-company__heading {
    font-size: 32px;
    margin-bottom: 28px;
    padding-left: 16px;
  }
  .about-company__grid {
    gap: 32px;
    flex-direction: column;
  }
  .about-company__left {
    flex: 1;
    min-width: auto;
    width: 100%;
  }
  .about-company__right {
    flex: 1;
    min-width: auto;
    width: 100%;
    animation: slideInFromRight 2.6s ease-out;
  }
  .about-company .about-swiper {
    overflow: hidden;
  }
  .about-company .swiper-button-prev,
  .about-company .swiper-button-next {
    width: 32px;
    height: 32px;
  }
  .about-company .swiper-button-prev::after,
  .about-company .swiper-button-next::after {
    font-size: 14px;
  }
  .about-company .company-title {
    font-size: 26px;
    margin-bottom: 16px;
  }
  .about-company .company-description {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 20px;
  }
}
@media (max-width: 480px) {
  .about-company {
    padding: 20px 16px;
    border-radius: 20px;
  }
  .about-company__heading {
    font-size: 28px;
    margin-bottom: 24px;
    border-left-width: 4px;
    padding-left: 12px;
  }
  .about-company__grid {
    gap: 24px;
  }
  .about-company .about-swiper {
    overflow: hidden;
  }
  .about-company .swiper-button-prev,
  .about-company .swiper-button-next {
    width: 28px;
    height: 28px;
  }
  .about-company .swiper-button-prev::after,
  .about-company .swiper-button-next::after {
    font-size: 12px;
  }
  .about-company .company-title {
    font-size: 20px;
  }
  .about-company .company-description {
    font-size: 13px;
    margin-top: 16px;
  }
}
.catalog-slider {
  position: relative;
  padding: 0 40px;
}
.catalog-slider__main {
  animation-name: BottomToTop;
  animation-duration: 1.5s;
}
@media (max-width: 768px) {
  .catalog-slider {
    padding: 0;
  }
}
.catalog-slider__swiper {
  overflow: hidden;
  width: 100%;
}
.catalog-slider__prev, .catalog-slider__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: white;
  border: 1px solid #e0e0e0;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 10;
}
.catalog-slider__prev:hover, .catalog-slider__next:hover {
  background: #7B1B38;
  color: white;
  border-color: #7B1B38;
}
.catalog-slider__prev.swiper-button-disabled, .catalog-slider__next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.catalog-slider__prev {
  left: -20px;
}
@media (max-width: 768px) {
  .catalog-slider__prev {
    left: 10px;
  }
}
.catalog-slider__next {
  right: -20px;
}
@media (max-width: 768px) {
  .catalog-slider__next {
    right: 10px;
  }
}
.catalog-slider__pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 30px;
}
.catalog-slider__pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #ccc;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
}
.catalog-slider__pagination .swiper-pagination-bullet-active {
  width: 24px;
  background: #333;
  border-radius: 4px;
}

.catalog-card {
  display: block;
  background: #f5f5f5;
  border-radius: 20px;
  padding: 20px;
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.catalog-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
.catalog-card__image {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 16px;
}
.catalog-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease;
}
.catalog-card:hover .catalog-card__image img {
  transform: scale(1.05);
}
.catalog-card__title {
  font-size: 18px;
  font-weight: 500;
  color: #333;
  text-align: center;
  margin: 0;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .catalog-card__title {
    font-size: 16px;
  }
}

.breadcrumbs {
  margin: 20px 0 24px;
  font-size: 14px;
  color: #64748B;
  padding-top: 20px;
}
.breadcrumbs a {
  color: #64748B;
  text-decoration: none;
  transition: color 0.2s;
}
.breadcrumbs a:hover {
  color: #7B1B38;
}
.breadcrumbs span {
  margin: 0 8px;
}
.breadcrumbs__current {
  color: #1E293B;
  font-weight: 500;
}

.product-main {
  display: grid;
  grid-template-columns: 1.4fr 1.2fr 0.9fr;
  gap: 32px;
  margin-bottom: 60px;
}

@media (max-width: 768px) {
  .product-main {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }
}
@media (max-width: 640px) {
  .product-main {
    grid-template-columns: 1fr;
    padding-inline: 15px;
  }
}
.product-action__card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 24px;
  padding: 24px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  top: 120px;
  position: sticky;
}
@media (max-width: 768px) {
  .product-action__card {
    top: 0;
    position: relative;
  }
}
.product-action__price {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 20px;
  color: #1E293B;
}
.product-action__btn-primary {
  width: 100%;
  padding: 14px;
  border-radius: 60px;
  font-weight: 600;
  font-size: 16px;
  border: none;
  cursor: pointer;
  transition: all 0.2s;
  margin-bottom: 12px;
  font-family: inherit;
  background: #7B1B38;
  color: white;
}
.product-action__btn-primary:hover {
  background: rgb(81.18, 17.82, 36.96);
  transform: translateY(-1px);
}
.product-action__btn-secondary {
  width: 100%;
  padding: 14px;
  border-radius: 60px;
  font-weight: 500;
  font-size: 16px;
  border: none;
  cursor: pointer;
  transition: all 0.2s;
  margin-bottom: 12px;
  font-family: inherit;
  background: transparent;
  border: 1px solid #7B1B38;
  color: #7B1B38;
}
.product-action__btn-secondary:hover {
  background: rgba(123, 27, 56, 0.05);
}
.product-action__delivery, .product-action__payment, .product-action__seller {
  font-size: 14px;
  margin-top: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #1E293B;
}
.product-action__icon {
  font-size: 18px;
}

@media (max-width: 768px) {
  .product-action__card {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
  }
  .product-action__price {
    margin-bottom: 0;
  }
  .product-action__btn-primary,
  .product-action__btn-secondary {
    width: auto;
    flex: 1;
    min-width: 160px;
  }
}
.product-action__old-price {
  font-size: 18px;
  color: #64748B;
  text-decoration: line-through;
  margin-bottom: 12px;
}
.product-action__minimum {
  font-size: 12px;
  color: #64748B;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #E2E8F0;
}

.specs-section {
  margin-bottom: 32px;
}
.specs-section__title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 16px;
  color: #1E293B;
}

.specs-text {
  line-height: 1.6;
  color: #1E293B;
}

.product-video {
  margin-top: 32px;
}
.product-video h3 {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 16px;
}
.product-video .video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}
.product-video .video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.reviews-block .reviews-list {
  margin-bottom: 32px;
}
.reviews-block .review-item {
  padding: 16px;
  border-bottom: 1px solid #E2E8F0;
}
.reviews-block .review-item__header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px;
}
.reviews-block .review-item__author {
  font-weight: 600;
  color: #1E293B;
}
.reviews-block .review-item__date {
  font-size: 12px;
  color: #64748B;
}
.reviews-block .review-item__rating {
  color: #f5b342;
  font-size: 14px;
  margin-bottom: 8px;
}
.reviews-block .review-item__text {
  line-height: 1.5;
  color: #1E293B;
}

.js-write-review {
  width: auto;
  padding: 10px 24px;
  margin: 0 auto;
  display: block;
}

.product-gallery {
  display: flex;
  gap: 16px;
  width: 100%;
  min-width: 0;
}
@media (max-width: 768px) {
  .product-gallery {
    flex-direction: column;
  }
}
.product-gallery__main-swiper {
  flex: 1;
  width: 100%;
  min-width: 0;
  position: sticky !important;
  top: 120px;
  height: 560px;
  border-radius: 20px;
  overflow: hidden;
  background: #F8FAFC;
}
@media (max-width: 640px) {
  .product-gallery__main-swiper {
    height: 400px;
    position: relative !important;
    top: 0;
  }
}
@media (max-width: 576px) {
  .product-gallery__main-swiper {
    height: 300px;
  }
}
.product-gallery__main-swiper .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.product-gallery__main-swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-gallery__main-swiper .swiper-button-next,
.product-gallery__main-swiper .swiper-button-prev {
  width: 40px;
  height: 40px;
  padding: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  color: #7B1B38;
}
.product-gallery__main-swiper .swiper-button-next:hover,
.product-gallery__main-swiper .swiper-button-prev:hover {
  background: #7B1B38;
  color: #FFFFFF;
}
.product-gallery__main-swiper .swiper-button-next::after,
.product-gallery__main-swiper .swiper-button-prev::after {
  font-size: 18px;
}
.product-gallery__main-swiper .swiper-pagination-bullet {
  background: #64748B;
}
.product-gallery__main-swiper .swiper-pagination-bullet-active {
  background: #7B1B38;
}
.product-gallery__thumbnails {
  width: 100px;
  flex-shrink: 0;
  min-width: 0;
}
@media (max-width: 768px) {
  .product-gallery__thumbnails {
    width: 100%;
    order: 2;
  }
}
.product-gallery__thumbnails .thumb-swiper {
  height: 560px;
  position: sticky !important;
  top: 120px;
}
@media (max-width: 768px) {
  .product-gallery__thumbnails .thumb-swiper {
    height: auto;
  }
}
.product-gallery__thumbnails .swiper-slide {
  width: 100%;
  height: 100px;
  opacity: 0.5;
  cursor: pointer;
  transition: opacity 0.2s;
}
.product-gallery__thumbnails .swiper-slide-thumb-active {
  opacity: 1;
}
@media (max-width: 768px) {
  .product-gallery__thumbnails .swiper-slide {
    height: 80px;
  }
}
.product-gallery__thumbnail-item {
  width: 100%;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
  border: 2px solid transparent;
}
.product-gallery__thumbnail-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.product-info__meta {
  display: flex;
  gap: 16px;
  margin-bottom: 12px;
  font-size: 14px;
}
.product-info__brand {
  font-weight: 600;
  color: #7B1B38;
}
.product-info__sku {
  color: #64748B;
}
.product-info__title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 16px;
  color: #1E293B;
}
.product-info__rating {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
}
.product-info__stars {
  color: #f5b342;
  font-size: 20px;
  letter-spacing: 2px;
}
.product-info__rating-value {
  font-weight: 600;
}
.product-info__reviews-link {
  color: #64748B;
  font-size: 14px;
  text-decoration: underline;
  cursor: pointer;
}
.product-info__reviews-link:hover {
  color: #7B1B38;
}
.product-info__price-block {
  display: flex;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.product-info__current-price {
  font-size: 32px;
  font-weight: 700;
  color: #1E293B;
}
.product-info__old-price {
  font-size: 20px;
  color: #64748B;
  text-decoration: line-through;
}
.product-info__discount {
  background: #fef2e8;
  color: #7B1B38;
  padding: 4px 10px;
  border-radius: 30px;
  font-weight: 600;
  font-size: 14px;
}
.product-info__availability {
  margin-bottom: 20px;
}
.product-info__in-stock {
  color: #10b981;
  font-weight: 600;
}
.product-info__out-of-stock {
  color: #ef4444;
}
.product-info__short-desc {
  margin-bottom: 24px;
  padding: 16px;
  border-radius: 16px;
}
.product-info__short-desc--title {
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 12px;
}
.product-info__short-desc--text {
  line-height: 1.45;
  color: #1E293B;
  margin-top: 8px;
  font-size: 0.875rem;
  font-weight: 500;
}
.product-info__specs {
  background: #F8FAFC;
  padding: 16px;
  border-radius: 16px;
  margin-top: 8px;
}
.product-info__specs h3 {
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 12px;
}
.product-info__specs-grid {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.product-info__spec-row {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  border-bottom: 1px dashed #E2E8F0;
  padding-bottom: 6px;
}
.product-info__spec-key {
  font-size: 0.875rem;
  font-weight: 500;
  color: #64748B;
}
.product-info__spec-value {
  font-weight: 500;
  max-width: 400px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.product-info__specs-link {
  display: inline-block;
  margin-top: 14px;
  font-size: 14px;
  color: #7B1B38;
  text-decoration: none;
}
.product-info__specs-link:hover {
  text-decoration: underline;
}
.product-info__options {
  margin-bottom: 24px;
  padding: 16px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
}
.product-info__option-group {
  margin-bottom: 20px;
}
.product-info__option-group:last-child {
  margin-bottom: 0;
}
.product-info__option-label {
  font-size: 0.875rem;
  font-weight: 400;
  color: #1E293B;
  margin-bottom: 12px;
}
.product-info__option-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.product-info__option-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 20px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 60px;
  font-size: 14px;
  font-weight: 500;
  color: #1E293B;
  cursor: pointer;
  transition: all 0.2s;
  font-family: inherit;
}
.product-info__option-btn:hover {
  border-color: #7B1B38;
  color: #7B1B38;
}
.product-info__option-btn.active {
  background: #7B1B38;
  border-color: #7B1B38;
  color: white;
}
.product-info__price-modifier {
  font-size: 11px;
  opacity: 0.8;
  margin-left: 4px;
}
.product-info__option-select {
  width: 100%;
  max-width: 300px;
  padding: 12px 40px 12px 16px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  font-size: 14px;
  font-family: inherit;
  font-weight: 500;
  color: #1E293B;
  cursor: pointer;
  transition: all 0.2s;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 16px;
}
.product-info__option-select:hover {
  border-color: #7B1B38;
}
.product-info__option-select:focus {
  outline: none;
  border-color: #7B1B38;
  box-shadow: 0 0 0 3px rgba(123, 27, 56, 0.1);
}
.product-info__option-colors {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.product-info__option-color {
  position: relative;
  width: 48px;
  height: 48px;
  border: 2px solid #E2E8F0;
  cursor: pointer;
  transition: all 0.2s;
  padding: 0;
  overflow: hidden;
  background-size: cover;
  background-position: center;
}
.product-info__option-color:hover {
  transform: scale(1.1);
  border-color: #7B1B38;
}
.product-info__option-color:hover .product-info__color-tooltip {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(-5px);
}
.product-info__option-color.active {
  border-color: #7B1B38;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #7B1B38;
}
.product-info__option-color img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-info__color-tooltip {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 8px;
  padding: 4px 8px;
  background: #1E293B;
  color: white;
  font-size: 12px;
  font-weight: normal;
  white-space: nowrap;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s;
  pointer-events: none;
  z-index: 10;
}
.product-info__color-tooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-top-color: #1E293B;
}

.product-tabs {
  margin: 40px 0 60px;
  border-top: 1px solid #E2E8F0;
  padding-top: 32px;
}
.product-tabs__headers {
  display: flex;
  gap: 10px;
  margin-bottom: 24px;
}
@media (max-width: 768px) {
  .product-tabs__headers {
    padding: 0px 20px;
  }
}
.product-tabs__content {
  max-width: 800px;
}
@media (max-width: 768px) {
  .product-tabs__content {
    margin-bottom: 24px;
    padding: 20px;
  }
}
.product-tabs__btn {
  background: none;
  border-radius: 30px;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 600;
  color: #64748B;
  cursor: pointer;
  transition: all 0.2s;
  font-family: inherit;
  position: relative;
}
.product-tabs__btn:hover {
  color: #FFFFFF;
  background: #7B1B38;
}
.product-tabs__btn--active {
  color: #FFFFFF;
  background: #7B1B38;
}
.product-tabs__pane {
  display: none;
  animation: fade 0.25s;
}
.product-tabs__pane--active {
  display: block;
}

@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.full-description p {
  margin-bottom: 16px;
  line-height: 1.5;
  font-size: 0.875rem;
}

.specs-table {
  width: 100%;
  border-collapse: collapse;
}
.specs-table tr {
  border-bottom: 1px solid #E2E8F0;
}
.specs-table td {
  padding: 14px 8px;
}
.specs-table__key {
  width: 200px;
  font-weight: 500;
  color: #64748B;
  font-size: 0.875rem;
}
.specs-table__value {
  color: #1E293B;
  font-size: 0.875rem;
}

.reviews-placeholder {
  text-align: center;
  padding: 50px;
  background: #F8FAFC;
  border-radius: 24px;
}
.reviews-placeholder p {
  margin-bottom: 16px;
}

@media (max-width: 640px) {
  .product-tabs__headers {
    gap: 16px;
    overflow-x: auto;
  }
  .product-tabs__btn {
    white-space: nowrap;
  }
}
.new-collection {
  width: 100%;
  padding: 60px 0;
}
.new-collection__container {
  margin: 0 auto;
  padding: 0 20px;
}
.new-collection__mobile {
  display: none;
}
.new-collection__desktop {
  display: flex;
  gap: 30px;
}
.new-collection__left {
  flex: 0 0 30%;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.new-collection__right {
  flex: 0 0 70%;
}
.new-collection__header {
  background: #f8f9fb;
  border-radius: 24px;
  padding: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  position: relative;
  overflow: hidden;
}
.new-collection__header::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
  transform: skewX(-20deg);
  animation: shine 3s ease-in-out infinite;
}
@media (max-width: 480px) {
  .new-collection__header {
    padding: 20px;
  }
}
.new-collection__title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: clamp(32px, 5vw, 44px);
  font-weight: 700;
  line-height: 1.3;
  color: #1E293B;
  margin: 0;
  text-align: center;
  width: 100%;
  transition: text-shadow 0.3s ease;
}
.new-collection__title span {
  display: block;
  font-family: inherit;
  font-size: clamp(32px, 6vw, 44px);
  font-weight: 800;
  color: #7B1B38;
  background: linear-gradient(135deg, #7B1B38, rgb(206.64, 45.36, 94.08));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: glowPulse 2s ease-in-out 1.2s infinite;
}
.new-collection__content {
  background: #FFFFFF;
  border-radius: 24px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 25px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
@media (max-width: 480px) {
  .new-collection__content {
    padding: 20px;
  }
}
.new-collection__advantages {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.new-collection__advantage-item {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 12px;
  background-color: #F8FAFC;
  border-radius: 16px;
  transition: all 0.3s ease;
}
.new-collection__advantage-item:hover {
  transform: translateX(5px);
  background-color: #EEF2FF;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.new-collection__advantage-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  color: #7B1B38;
}
.new-collection__advantage-text {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #1E293B;
  line-height: 1.4;
}
.new-collection__description p {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: #64748B;
  margin: 0;
}
.new-collection__actions {
  margin-top: 10px;
}
.new-collection__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 28px;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 50px;
  transition: all 0.3s ease;
  cursor: pointer;
}
.new-collection__button--primary {
  background: linear-gradient(135deg, #7B1B38 0%, rgb(81.18, 17.82, 36.96) 100%);
  color: #FFFFFF;
  border: none;
  width: 100%;
}
.new-collection__button--primary svg {
  transition: transform 0.3s ease;
}
.new-collection__button--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  color: #FFFFFF;
}
.new-collection__button--primary:hover svg {
  transform: translateX(5px);
}
.new-collection__button--primary:active {
  transform: translateY(0);
}
.new-collection__flip-card {
  background-color: transparent;
  width: 100%;
  height: 100%;
  perspective: 1500px;
  cursor: pointer;
  border-radius: 24px;
}
@media (max-width: 768px) {
  .new-collection__flip-card {
    min-height: 500px;
  }
}
.new-collection__flip-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  transform-style: preserve-3d;
  border-radius: 24px;
}
.new-collection__flip-inner.is-flipped--left {
  transform: rotateY(-180deg);
}
.new-collection__flip-inner.is-flipped--right {
  transform: rotateY(180deg);
}
.new-collection__flip-inner.is-flipped {
  transform: rotateY(180deg);
}
.new-collection__flip-inner.swipe-left {
  animation: flipSwipeLeft 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.new-collection__flip-inner.swipe-right {
  animation: flipSwipeRight 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.new-collection__flip-inner.swipe-left-close {
  animation: flipSwipeLeftClose 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.new-collection__flip-inner.swipe-right-open {
  animation: flipSwipeRightOpen 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@media (max-width: 768px) {
  .new-collection__flip-inner {
    height: 70vh;
  }
}
.new-collection__flip-front, .new-collection__flip-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  border-radius: 24px;
  overflow: hidden;
}
.new-collection__flip-front {
  background-color: #1E293B;
  transform: rotateY(0deg);
}
.new-collection__flip-back {
  background-color: #FFFFFF;
  transform: rotateY(180deg);
  overflow-y: auto;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.new-collection__flip-back::-webkit-scrollbar {
  width: 6px;
}
.new-collection__flip-back::-webkit-scrollbar-track {
  background: #F8FAFC;
  border-radius: 10px;
}
.new-collection__flip-back::-webkit-scrollbar-thumb {
  background: #7B1B38;
  border-radius: 10px;
}
.new-collection__video-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #1E293B;
  overflow: hidden;
}
.new-collection__video-wrapper.has-padding {
  padding-bottom: 56.25%;
}
.new-collection__video-wrapper.has-padding .new-collection__video {
  position: absolute;
  top: 0;
  left: 0;
}
.new-collection__video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.new-collection__video::-webkit-media-controls {
  z-index: 2;
}
.new-collection__video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(30, 41, 59, 0.3), rgba(30, 41, 59, 0.1));
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}
.new-collection__video-overlay:hover {
  background: rgba(30, 41, 59, 0.2);
}
.new-collection__video-overlay.hidden {
  display: none;
}
.new-collection__flip-hint {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  background: rgba(255, 255, 255, 0.95);
  border: none;
  padding: 10px 30px !important;
  border-radius: 60px;
  cursor: pointer;
  transition: all 0.3s ease;
  backdrop-filter: blur(10px);
  color: #FFFFFF;
}
.new-collection__flip-hint svg {
  width: 32px;
  height: 32px;
  transition: transform 0.3s ease;
}
.new-collection__flip-hint span {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 600;
}
.new-collection__flip-hint:hover {
  transform: scale(1.05);
  background: rgb(81.18, 17.82, 36.96);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}
.new-collection__flip-hint:hover svg {
  transform: rotate(90deg);
}
.new-collection__gallery-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  padding: 30px;
  height: 100%;
}
@media (max-width: 1024px) {
  .new-collection__gallery-card {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 24px;
  }
}
@media (max-width: 640px) {
  .new-collection__gallery-card {
    padding: 20px;
    gap: 20px;
  }
}
.new-collection__gallery-wrapper {
  min-width: 0;
  width: 100%;
  align-content: center;
}
.new-collection__main-slider {
  width: 100%;
  height: 350px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}
@media (max-width: 1024px) {
  .new-collection__main-slider {
    height: 320px;
  }
}
@media (max-width: 768px) {
  .new-collection__main-slider {
    height: 280px;
  }
}
@media (max-width: 640px) {
  .new-collection__main-slider {
    height: 240px;
  }
}
.new-collection__main-slide {
  width: 100%;
  height: 100%;
}
.new-collection__main-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.new-collection__nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  padding: 0 16px;
  z-index: 10;
  pointer-events: none;
}
.new-collection__prev, .new-collection__next {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  color: #1E293B;
  backdrop-filter: blur(4px);
  pointer-events: auto;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.new-collection__prev:hover, .new-collection__next:hover {
  background: #7B1B38;
  color: #FFFFFF;
  transform: scale(1.1);
}
.new-collection__prev svg, .new-collection__next svg {
  width: 20px;
  height: 20px;
}
.new-collection__thumbs {
  width: 100%;
  overflow: hidden;
  margin-top: 16px;
}
.new-collection__thumbs .swiper-wrapper {
  display: flex;
  align-items: center;
}
.new-collection__thumbs .swiper-slide {
  width: 120px !important;
  height: 120px;
  flex-shrink: 0;
  border-radius: 12px;
  overflow: hidden;
  opacity: 0.5;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media (max-width: 640px) {
  .new-collection__thumbs .swiper-slide {
    width: 55px !important;
    height: 55px;
  }
}
.new-collection__thumbs .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
  box-shadow: 0 0 0 2px #7B1B38;
}
.new-collection__thumbs .swiper-slide:hover {
  opacity: 0.8;
}
.new-collection__thumb-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.new-collection__gallery-info {
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: left;
  justify-content: center;
}
@media (max-width: 1024px) {
  .new-collection__gallery-info {
    gap: 16px;
  }
}
.new-collection__gallery-title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #1E293B;
  line-height: 1.3;
  margin: 0;
}
@media (max-width: 768px) {
  .new-collection__gallery-title {
    font-size: 22px;
  }
}
@media (max-width: 640px) {
  .new-collection__gallery-title {
    font-size: 20px;
  }
}
.new-collection__gallery-price {
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid #E2E8F0;
  border-bottom: 1px solid #E2E8F0;
}
.new-collection__gallery-price-label {
  font-size: 14px;
  color: #64748B;
  font-weight: 500;
}
.new-collection__gallery-price-value {
  font-size: 26px;
  font-weight: 700;
  color: #7B1B38;
}
@media (max-width: 640px) {
  .new-collection__gallery-price-value {
    font-size: 22px;
  }
}
.new-collection__gallery-description {
  font-size: 15px;
  line-height: 1.5;
  color: #64748B;
  margin: 0;
}
@media (max-width: 640px) {
  .new-collection__gallery-description {
    font-size: 14px;
  }
}
.new-collection__gallery-prop {
  display: flex;
  gap: 12px;
  font-size: 14px;
}
@media (max-width: 640px) {
  .new-collection__gallery-prop {
    font-size: 13px;
  }
}
.new-collection__gallery-prop-label {
  font-weight: 600;
  color: #1E293B;
  min-width: 85px;
}
.new-collection__gallery-prop-value {
  color: #64748B;
  flex: 1;
}
.new-collection__gallery-actions {
  display: flex;
  gap: 12px;
  margin-top: 10px;
  flex-wrap: wrap;
}
@media (max-width: 640px) {
  .new-collection__gallery-actions {
    flex-direction: column;
  }
}
.new-collection__flip-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 24px;
  background: transparent;
  border: 2px solid #7B1B38;
  border-radius: 50px;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #7B1B38;
  cursor: pointer;
  transition: all 0.3s ease;
  position: absolute;
  bottom: 20px;
  right: 20px;
}
.new-collection__flip-back-btn svg {
  transition: transform 0.3s ease;
}
.new-collection__flip-back-btn:hover {
  background: #7B1B38;
  color: #FFFFFF;
}
.new-collection__flip-back-btn:hover svg {
  transform: translateX(-5px);
}
@media (max-width: 768px) {
  .new-collection__flip-back-btn {
    width: 100%;
    padding: 10px 20px;
    position: relative;
    bottom: auto;
    right: auto;
    margin-bottom: 20px;
  }
}
.new-collection__gallery-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 32px;
  background: #7B1B38;
  color: #FFFFFF;
  border: none;
  border-radius: 50px;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  flex: 1;
}
.new-collection__gallery-btn:hover {
  background: #5c142a;
  transform: translateY(-2px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
.new-collection__gallery-btn:active {
  transform: translateY(0);
}
@media (max-width: 640px) {
  .new-collection__gallery-btn {
    width: 100%;
    padding: 10px 24px;
  }
}
.new-collection__flip-hint--corner {
  position: absolute;
  bottom: 20px;
  right: 20px;
  background: #7B1B38;
  backdrop-filter: blur(12px);
  border-radius: 50px;
  padding: 8px 16px 8px 20px;
  flex-direction: row;
  gap: 12px;
  animation: pulseGlow 3.5s ease-in-out infinite, gentleBounce 2s ease-in-out infinite;
  box-shadow: 0 0 15px rgba(123, 27, 56, 0.8);
}
.new-collection__flip-hint--corner .flip-hint__content span {
  font-weight: 700;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.5);
}
@media (max-width: 768px) {
  .new-collection__flip-hint--corner {
    right: 20px;
    bottom: 20px;
    left: auto;
  }
}
.new-collection__flip-hint--corner .flip-hint__content {
  display: flex;
  align-items: center;
  gap: 12px;
}
.new-collection__flip-hint--corner:hover {
  transform: scale(1.05);
  background: rgb(164.82, 36.18, 75.04);
  box-shadow: 0 0 25px #7b1b38;
}

@media (max-width: 768px) {
  .new-collection__desktop {
    display: none;
  }
  .new-collection__mobile {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }
  .new-collection__right {
    min-height: 500px;
  }
  .new-collection__content {
    order: 3;
  }
}
@keyframes shine {
  0% {
    left: -100%;
  }
  20%, 100% {
    left: 100%;
  }
}
@keyframes pulseGlow {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(123, 27, 56, 0.7);
    background: #7B1B38;
  }
  50% {
    transform: scale(1.1);
    box-shadow: 0 0 0 15px rgba(123, 27, 56, 0);
    background: rgb(185.73, 40.77, 84.56);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(123, 27, 56, 0);
    background: #7B1B38;
  }
}
@keyframes gentleBounce {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}
@keyframes glowPulse {
  0%, 100% {
    text-shadow: 0 0 5px rgba(123, 27, 56, 0.5);
    filter: brightness(1);
  }
  50% {
    text-shadow: 0 0 20px rgba(123, 27, 56, 0.8), 0 0 5px rgba(123, 27, 56, 0.5);
    filter: brightness(1.1);
  }
}
@keyframes flipSwipeLeft {
  from {
    transform: rotateY(0deg);
  }
  to {
    transform: rotateY(-180deg);
  }
}
@keyframes flipSwipeRight {
  from {
    transform: rotateY(180deg);
  }
  to {
    transform: rotateY(0deg);
  }
}
@keyframes flipSwipeLeftClose {
  from {
    transform: rotateY(-180deg);
  }
  to {
    transform: rotateY(0deg);
  }
}
@keyframes flipSwipeRightOpen {
  from {
    transform: rotateY(0deg);
  }
  to {
    transform: rotateY(180deg);
  }
}
@media (max-width: 1024px) {
  .new-collection {
    padding: 40px 0;
  }
  .new-collection__header, .new-collection__content {
    padding: 25px;
  }
}
@media (max-width: 640px) {
  .new-collection {
    padding: 30px 0;
  }
  .new-collection__advantage-item {
    padding: 8px;
  }
  .new-collection__advantage-icon {
    width: 22px;
    height: 22px;
  }
  .new-collection__advantage-text {
    font-size: 14px;
  }
  .new-collection__button {
    padding: 12px 24px;
    font-size: 14px;
  }
  .new-collection__flip-card {
    min-height: 600px;
  }
  .new-collection__flip-back {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .new-collection__gallery-card {
    min-height: 550px;
  }
}
@supports (-webkit-touch-callout: none) {
  .new-collection__flip-back {
    overflow-y: scroll;
  }
}
.contact-form {
  background: #FFFFFF;
  border-radius: 32px;
  padding: 60px 48px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.05);
  width: 100%;
}
.contact-form__container {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}
.contact-form__title {
  font-size: 36px;
  font-weight: 700;
  color: #1E293B;
  text-align: left;
  margin-bottom: 16px;
  font-family: "Manrope", Arial, Helvetica, sans-serif;
}
@media (max-width: 768px) {
  .contact-form__title {
    font-size: 28px;
    text-align: left;
  }
}
@media (max-width: 480px) {
  .contact-form__title {
    font-size: 24px;
  }
}
.contact-form__description {
  font-size: 16px;
  line-height: 1.5;
  color: rgb(64.3820224719, 87.9887640449, 126.6179775281);
  text-align: left;
  margin-bottom: 40px;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 768px) {
  .contact-form__description {
    font-size: 14px;
    margin-bottom: 32px;
  }
}
.contact-form__form {
  margin-top: 20px;
  width: 100%;
}
.contact-form__fields {
  display: flex;
  gap: 20px;
  align-items: flex-end;
  margin-bottom: 32px;
  flex-wrap: wrap;
  width: 100%;
}
@media (max-width: 1024px) {
  .contact-form__fields {
    gap: 16px;
  }
}
@media (max-width: 900px) {
  .contact-form__fields {
    flex-direction: column;
    align-items: stretch;
  }
}
.contact-form__field {
  flex: 1;
}
@media (max-width: 900px) {
  .contact-form__field {
    width: 100%;
  }
}
.contact-form__label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #1E293B;
  margin-bottom: 8px;
  text-align: left;
}
@media (max-width: 768px) {
  .contact-form__label {
    font-size: 13px;
  }
}
.contact-form__input {
  width: 100%;
  padding: 14px 18px;
  font-size: 15px;
  border: 1.5px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
  transition: all 0.3s ease;
}
.contact-form__input:focus {
  outline: none;
  border-color: #7B1B38;
  box-shadow: 0 0 0 3px rgba(123, 27, 56, 0.1);
}
.contact-form__input::-moz-placeholder {
  color: rgb(144.9550561798, 165.4719101124, 199.0449438202);
}
.contact-form__input::placeholder {
  color: rgb(144.9550561798, 165.4719101124, 199.0449438202);
}
@media (max-width: 768px) {
  .contact-form__input {
    padding: 12px 16px;
    font-size: 14px;
  }
}
.contact-form__button-wrapper {
  flex-shrink: 0;
}
@media (max-width: 900px) {
  .contact-form__button-wrapper {
    width: 100%;
  }
}
.contact-form__button {
  padding: 14px 32px;
  background: linear-gradient(135deg, #7B1B38, rgb(89.544, 19.656, 40.768));
  color: #FFFFFF;
  border: none;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
}
.contact-form__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
  animation: btnShine 3s infinite ease-in-out;
  pointer-events: none;
}
.contact-form__button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(123, 27, 56, 0.3);
}
.contact-form__button:active {
  transform: translateY(0);
}
@media (max-width: 900px) {
  .contact-form__button {
    width: 100%;
    white-space: normal;
    padding: 14px 24px;
  }
}
@media (max-width: 768px) {
  .contact-form__button {
    font-size: 14px;
  }
}
.contact-form__checkbox {
  margin-top: 8px;
  text-align: left;
}
.contact-form__checkbox .checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 14px;
  color: rgb(64.3820224719, 87.9887640449, 126.6179775281);
}
.contact-form__checkbox .checkbox-label input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.contact-form__checkbox .checkbox-label input:checked + .checkbox-custom {
  background: #7B1B38;
  border-color: #7B1B38;
}
.contact-form__checkbox .checkbox-label input:checked + .checkbox-custom::after {
  content: "✓";
  color: #FFFFFF;
  font-size: 12px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.contact-form__checkbox .checkbox-label .checkbox-custom {
  width: 20px;
  height: 20px;
  border: 2px solid #E2E8F0;
  border-radius: 6px;
  background: #FFFFFF;
  position: relative;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.contact-form__checkbox .checkbox-label .checkbox-text {
  line-height: 1.4;
  transition: color 0.2s ease;
  text-align: left;
}
@media (max-width: 768px) {
  .contact-form__checkbox .checkbox-label .checkbox-text {
    font-size: 12px;
  }
}
.contact-form__checkbox .checkbox-label:hover .checkbox-custom {
  border-color: #7B1B38;
}
.contact-form__checkbox .checkbox-label:hover .checkbox-text {
  color: #1E293B;
}

@keyframes btnShine {
  0% {
    left: -100%;
  }
  20%, 100% {
    left: 100%;
  }
}
@media (max-width: 480px) {
  .contact-form {
    padding: 40px 24px;
  }
  .contact-form__title {
    font-size: 22px;
    text-align: left;
  }
  .contact-form__description {
    font-size: 13px;
    margin-bottom: 28px;
    text-align: left;
  }
  .contact-form__input {
    padding: 10px 14px;
    font-size: 13px;
  }
  .contact-form__button {
    padding: 12px 20px;
    font-size: 13px;
  }
  .contact-form .checkbox-text {
    font-size: 11px;
  }
}
.about-company-page {
  padding: 80px 0;
  background: #FFFFFF;
}
@media (max-width: 768px) {
  .about-company-page {
    padding: 60px 0;
  }
}
@media (max-width: 640px) {
  .about-company-page {
    padding: 40px 0;
  }
}
.about-company-page__title {
  font-family: "Manrope", Arial, Helvetica, sans-serif;
  font-size: 48px;
  font-weight: 600;
  color: #1E293B;
  margin-bottom: 40px;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-align: center;
}
@media (max-width: 768px) {
  .about-company-page__title {
    font-size: 38px;
    margin-bottom: 32px;
  }
}
@media (max-width: 640px) {
  .about-company-page__title {
    font-size: 32px;
    margin-bottom: 24px;
  }
}
.about-company-page__description {
  font-size: 16px;
  line-height: 1.6;
  color: #1E293B;
  text-align: left;
}
.about-company-page__description p {
  margin-bottom: 16px;
}
.about-company-page__description p:last-child {
  margin-bottom: 0;
}
.about-company-page__description strong {
  color: #7B1B38;
  font-weight: 600;
}
.about-company-page__description ul, .about-company-page__description ol {
  margin: 20px 0;
  padding-left: 24px;
}
.about-company-page__description li {
  margin-bottom: 8px;
}
@media (max-width: 640px) {
  .about-company-page__description {
    font-size: 14px;
    line-height: 1.5;
  }
}

.certificates {
  padding: 80px 0;
  background: #F8FAFC;
  position: relative;
  overflow-x: clip;
}
@media (max-width: 768px) {
  .certificates {
    padding: 60px 0;
  }
}
@media (max-width: 640px) {
  .certificates {
    padding: 40px 0;
  }
}
.certificates__title {
  font-size: 45px;
  font-family: Bebas Neue, sans-serif;
  font-weight: 600;
  color: #1E293B;
  margin-bottom: 48px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
}
@media (max-width: 768px) {
  .certificates__title {
    font-size: 30px;
    margin-bottom: 36px;
  }
}
@media (max-width: 640px) {
  .certificates__title {
    font-size: 24px;
    margin-bottom: 28px;
  }
}
.certificates-slider-container {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 60px;
}
@media (max-width: 1024px) {
  .certificates-slider-container {
    padding: 0 50px;
  }
}
@media (max-width: 768px) {
  .certificates-slider-container {
    padding: 0 40px;
  }
}
@media (max-width: 640px) {
  .certificates-slider-container {
    padding: 0 30px;
  }
}
.certificates-slider {
  position: relative;
  width: 100%;
  overflow: visible;
}
.certificates-slider .swiper {
  overflow: visible;
}
.certificates-slider .swiper-wrapper {
  display: flex;
}
.certificates-slider__slide {
  height: auto;
}
.certificates-slider__pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 32px;
  width: 100%;
  position: relative;
  bottom: 0;
  left: 0;
  right: 0;
}
.certificates-slider__pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #E2E8F0;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  opacity: 1;
  margin: 0;
}
.certificates-slider__pagination .swiper-pagination-bullet-active {
  width: 24px;
  border-radius: 4px;
  background: #7B1B38;
}
.certificates-slider__nav {
  position: absolute;
  top: calc(50% - 22px);
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 10;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.certificates-slider__nav svg {
  width: 20px;
  height: 20px;
  stroke: #1E293B;
  transition: stroke 0.3s ease;
}
.certificates-slider__nav:hover {
  background: #7B1B38;
  border-color: #7B1B38;
}
.certificates-slider__nav:hover svg {
  stroke: #FFFFFF;
}
@media (max-width: 640px) {
  .certificates-slider__nav {
    width: 36px;
    height: 36px;
  }
  .certificates-slider__nav svg {
    width: 16px;
    height: 16px;
  }
}
.certificates-slider__prev {
  left: 10px;
}
@media (max-width: 1024px) {
  .certificates-slider__prev {
    left: 5px;
  }
}
@media (max-width: 640px) {
  .certificates-slider__prev {
    left: 0;
  }
}
.certificates-slider__next {
  right: 10px;
}
@media (max-width: 1024px) {
  .certificates-slider__next {
    right: 5px;
  }
}
@media (max-width: 640px) {
  .certificates-slider__next {
    right: 0;
  }
}
.certificates-card {
  background: #FFFFFF;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  height: 100%;
  cursor: pointer;
}
.certificates-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}
.certificates-card img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.certificates-card__placeholder {
  aspect-ratio: 1/1.4;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #F8FAFC;
  color: #64748B;
  gap: 12px;
  text-align: center;
  padding: 20px;
}
.certificates-card__placeholder svg {
  stroke: #64748B;
}
.certificates-card__placeholder span {
  font-size: 14px;
  font-weight: 500;
}

.media {
  padding: 80px 0;
  margin-bottom: 60px;
  background: #F8FAFC;
  position: relative;
  overflow: visible;
}
@media (max-width: 768px) {
  .media {
    padding: 60px 0;
  }
}
@media (max-width: 640px) {
  .media {
    padding: 40px 0;
  }
}
.media__title {
  font-size: 45px;
  font-family: Bebas Neue, sans-serif;
  font-weight: 600;
  color: #1E293B;
  margin-bottom: 48px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
}
@media (max-width: 768px) {
  .media__title {
    font-size: 30px;
    margin-bottom: 36px;
  }
}
@media (max-width: 640px) {
  .media__title {
    font-size: 24px;
    margin-bottom: 28px;
  }
}
.media-slider-container {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 60px;
  overflow: visible;
}
@media (max-width: 1024px) {
  .media-slider-container {
    padding: 0 50px;
  }
}
@media (max-width: 768px) {
  .media-slider-container {
    padding: 0 40px;
  }
}
@media (max-width: 640px) {
  .media-slider-container {
    padding: 0 30px;
  }
}
.media-slider {
  position: relative;
  width: 100%;
  overflow: visible;
}
.media-slider .swiper {
  overflow: visible;
  width: 100%;
}
.media-slider .swiper-wrapper {
  display: flex;
}
.media-slider__slide {
  height: auto;
}
.media-slider__pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 32px;
  width: 100%;
  position: relative;
  bottom: 0;
  left: 0;
  right: 0;
}
.media-slider__pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #E2E8F0;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  opacity: 1;
  margin: 0;
}
.media-slider__pagination .swiper-pagination-bullet-active {
  width: 24px;
  border-radius: 4px;
  background: #7B1B38;
}
.media-slider__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 10;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.media-slider__nav svg {
  width: 20px;
  height: 20px;
  stroke: #1E293B;
  transition: stroke 0.3s ease;
}
.media-slider__nav:hover {
  background: #7B1B38;
  border-color: #7B1B38;
}
.media-slider__nav:hover svg {
  stroke: #FFFFFF;
}
@media (max-width: 640px) {
  .media-slider__nav {
    width: 36px;
    height: 36px;
  }
  .media-slider__nav svg {
    width: 16px;
    height: 16px;
  }
}
.media-slider__prev {
  left: -22px;
  right: auto;
}
@media (max-width: 1024px) {
  .media-slider__prev {
    left: -16px;
  }
}
@media (max-width: 768px) {
  .media-slider__prev {
    left: -12px;
  }
}
@media (max-width: 640px) {
  .media-slider__prev {
    left: -8px;
  }
}
.media-slider__next {
  right: -22px;
  left: auto;
}
@media (max-width: 1024px) {
  .media-slider__next {
    right: -16px;
  }
}
@media (max-width: 768px) {
  .media-slider__next {
    right: -12px;
  }
}
@media (max-width: 640px) {
  .media-slider__next {
    right: -8px;
  }
}
.media-card {
  background: #FFFFFF;
  border-radius: 20px;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
  border: 1px solid #E2E8F0;
  display: flex;
  flex-direction: column;
}
.media-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  border-color: #7B1B38;
}
.media-card__image {
  aspect-ratio: 4/3;
  overflow: hidden;
  background: #F8FAFC;
}
.media-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.media-card:hover .media-card__image img {
  transform: scale(1.05);
}
.media-card__placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F8FAFC;
}
.media-card__placeholder svg {
  stroke: #64748B;
  width: 48px;
  height: 48px;
}
.media-card__content {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.media-card__title {
  font-size: 18px;
  font-weight: 700;
  color: #1E293B;
  line-height: 1.4;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.media-card__description {
  font-size: 14px;
  color: #64748B;
  line-height: 1.5;
  margin-bottom: 20px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.media-card__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  color: #7B1B38;
  text-decoration: none;
  margin-top: auto;
  transition: gap 0.3s ease;
}
.media-card__btn svg {
  stroke: #7B1B38;
  transition: transform 0.3s ease;
}
.media-card__btn:hover {
  gap: 12px;
}
.media-card__btn:hover svg {
  transform: translateX(4px);
}

.production {
  padding: 80px 0;
  background: #FFFFFF;
  position: relative;
  overflow-x: clip;
}
@media (max-width: 768px) {
  .production {
    padding: 60px 0;
  }
}
@media (max-width: 640px) {
  .production {
    padding: 40px 0;
  }
}
.production__title {
  font-size: 45px;
  font-family: Bebas Neue, sans-serif;
  font-weight: 600;
  color: #1E293B;
  margin-bottom: 48px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
}
@media (max-width: 768px) {
  .production__title {
    font-size: 30px;
    margin-bottom: 36px;
  }
}
@media (max-width: 640px) {
  .production__title {
    font-size: 24px;
    margin-bottom: 28px;
  }
}
.production-slider-container {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 60px;
}
@media (max-width: 1024px) {
  .production-slider-container {
    padding: 0 50px;
  }
}
@media (max-width: 768px) {
  .production-slider-container {
    padding: 0 40px;
  }
}
@media (max-width: 640px) {
  .production-slider-container {
    padding: 0 30px;
  }
}
.production-slider {
  position: relative;
  width: 100%;
  overflow: visible;
}
.production-slider .swiper {
  overflow: visible;
}
.production-slider .swiper-wrapper {
  display: flex;
}
.production-slider__slide {
  height: auto;
}
.production-slider__image {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 20px;
  cursor: pointer;
  background: #F8FAFC;
}
.production-slider__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.production-slider__image:hover img {
  transform: scale(1.05);
}
.production-slider__caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 12px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  color: #FFFFFF;
  font-size: 14px;
  text-align: center;
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.production-slider__image:hover .production-slider__caption {
  transform: translateY(0);
}
.production-slider__pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 32px;
  width: 100%;
  position: relative;
  bottom: 0;
  left: 0;
  right: 0;
}
.production-slider__pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #E2E8F0;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  opacity: 1;
  margin: 0;
}
.production-slider__pagination .swiper-pagination-bullet-active {
  width: 24px;
  border-radius: 4px;
  background: #7B1B38;
}
.production-slider__nav {
  position: absolute;
  top: calc(50% - 22px);
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 10;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.production-slider__nav svg {
  width: 20px;
  height: 20px;
  stroke: #1E293B;
  transition: stroke 0.3s ease;
}
.production-slider__nav:hover {
  background: #7B1B38;
  border-color: #7B1B38;
}
.production-slider__nav:hover svg {
  stroke: #FFFFFF;
}
@media (max-width: 640px) {
  .production-slider__nav {
    width: 36px;
    height: 36px;
  }
  .production-slider__nav svg {
    width: 16px;
    height: 16px;
  }
}
.production-slider__prev {
  left: 10px;
}
@media (max-width: 1024px) {
  .production-slider__prev {
    left: 5px;
  }
}
@media (max-width: 640px) {
  .production-slider__prev {
    left: 0;
  }
}
.production-slider__next {
  right: 10px;
}
@media (max-width: 1024px) {
  .production-slider__next {
    right: 5px;
  }
}
@media (max-width: 640px) {
  .production-slider__next {
    right: 0;
  }
}

.map-section {
  padding: 50px 0;
}
@media (min-width: 768px) {
  .map-section {
    padding: 80px 0;
  }
}
@media (min-width: 1200px) {
  .map-section {
    padding: 100px 0;
  }
}
.map-section__wrap {
  margin: 0 auto;
}
.map-section__title {
  font-size: 36px;
  font-weight: 700;
  color: #FFFFFF;
  text-align: center;
  margin-bottom: 40px;
}
.map-section__title span {
  color: #7B1B38;
}
@media (min-width: 768px) {
  .map-section__title {
    font-size: 48px;
    margin-bottom: 50px;
  }
}
@media (min-width: 1200px) {
  .map-section__title {
    font-size: 60px;
    margin-bottom: 60px;
  }
}
.map-section__row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.map-section__container {
  flex: 1 1;
  box-shadow: 0 20px 40px rgba(123, 27, 56, 0.1);
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  background: #1E293B;
  border: 1px solid rgba(123, 27, 56, 0.15);
  transition: all 0.3s ease;
}
.map-section__container:hover {
  border-color: rgba(123, 27, 56, 0.3);
  box-shadow: 0 25px 50px rgba(123, 27, 56, 0.3);
}
@media (min-width: 992px) {
  .map-section__container {
    border-radius: 24px;
  }
}
.map-section__container iframe {
  width: 100%;
  height: 100%;
  min-height: 350px;
}
@media (min-width: 768px) {
  .map-section__container iframe {
    min-height: 400px;
  }
}
@media (min-width: 992px) {
  .map-section__container iframe {
    min-height: 450px;
  }
}

@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/themes/main/assets/fonts/PlayfairDisplay/playfair-display-cyrillic-400-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/themes/main/assets/fonts/PlayfairDisplay/playfair-display-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/themes/main/assets/fonts/PlayfairDisplay/playfair-display-cyrillic-500-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/themes/main/assets/fonts/PlayfairDisplay/playfair-display-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/themes/main/assets/fonts/PlayfairDisplay/playfair-display-cyrillic-600-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/themes/main/assets/fonts/PlayfairDisplay/playfair-display-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-cyrillic-400-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-cyrillic-500-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-cyrillic-600-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-cyrillic-700-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/themes/main/assets/fonts/Inter/inter-latin-700-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --mt-cream: #FCFAF5;
  --mt-beige: #F4EEE6;
  --mt-beige-2: #EDE6DB;
  --mt-sage: #E4EBE6;
  --mt-card: #FFFDF8;
  --mt-green: #1F5E4C;
  --mt-green-hover: #174B3C;
  --mt-green-dark: #163B31;
  --mt-ink: #2A2826;
  --mt-muted: #6E6A64;
  --mt-line: #E6DFD3;
  --mt-gold: #B98B4B;
  --mt-step-dark: #2B2A28;
  --mt-serif: 'Playfair Display', 'Times New Roman', Georgia, serif;
  --mt-sans: 'Inter', 'Manrope', Arial, sans-serif;
  --mt-container: 1710px;
  --mt-pad: 16px;
  --mt-edge: max(var(--mt-pad), calc((100vw - var(--mt-container)) / 2));
  --mt-radius: 10px;
  --mt-section-y: 56px;
  --mt-header-h: 64px;
}
@media (min-width: 768px) {
  :root {
    --mt-pad: 32px;
    --mt-section-y: 80px;
  }
}
@media (min-width: 1024px) {
  :root {
    --mt-pad: 40px;
    --mt-section-y: 96px;
    --mt-header-h: 112px;
  }
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--mt-header-h) + 8px);
}

body {
  background: var(--mt-cream);
  color: var(--mt-ink);
  font-family: var(--mt-sans);
  -webkit-font-smoothing: antialiased;
}

.mt-container {
  width: 100%;
  max-width: calc(var(--mt-container) + var(--mt-pad) * 2);
  margin: 0 auto;
  padding: 0 var(--mt-pad);
}

.mt-section {
  padding: var(--mt-section-y) 0;
  background: var(--mt-cream);
}
.mt-section--beige {
  background: var(--mt-beige);
}
.mt-section--sage {
  background: var(--mt-sage);
}

.mt-head {
  margin-bottom: 32px;
}
@media (min-width: 1024px) {
  .mt-head {
    margin-bottom: 48px;
  }
  .mt-head--center {
    text-align: center;
  }
  .mt-head--row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
  }
}

.mt-eyebrow {
  margin: 0 0 14px;
  font-family: var(--mt-sans);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-eyebrow {
    font-size: 12px;
    margin-bottom: 18px;
  }
}

.mt-title {
  margin: 0;
  font-family: var(--mt-serif);
  font-weight: 400;
  font-size: 32px;
  line-height: 1.18;
  letter-spacing: -0.01em;
  color: var(--mt-ink);
}
@media (min-width: 768px) {
  .mt-title {
    font-size: 42px;
  }
}
@media (min-width: 1280px) {
  .mt-title {
    font-size: 56px;
  }
}

.mt-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 15px;
  font-weight: 600;
  color: var(--mt-green);
  text-decoration: none;
  transition: color 0.2s ease, gap 0.2s ease;
}
.mt-link:hover {
  color: var(--mt-green-hover);
  gap: 10px;
}
@media (min-width: 1024px) {
  .mt-link {
    font-size: 17px;
  }
}

.mt-card {
  background: var(--mt-card);
  border-radius: var(--mt-radius);
}

.mt-grid-3 {
  display: grid;
  gap: 16px;
}
@media (min-width: 768px) {
  .mt-grid-3 {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
@media (min-width: 1024px) {
  .mt-grid-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 34px;
  }
}

.mt-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .mt-mobile-only {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .mt-desktop-only {
    display: none !important;
  }
}

.mt-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  min-height: 52px;
  padding: 0 28px;
  border: 1.5px solid transparent;
  border-radius: 8px;
  font-family: var(--mt-sans);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
.mt-btn:active {
  transform: translateY(1px);
}
.mt-btn--primary {
  background: var(--mt-green);
  color: #fff;
}
.mt-btn--primary:hover, .mt-btn--primary:focus-visible {
  background: var(--mt-green-hover);
  color: #fff;
}
.mt-btn--outline {
  background: transparent;
  border-color: rgba(31, 94, 76, 0.55);
  color: var(--mt-green);
}
.mt-btn--outline:hover, .mt-btn--outline:focus-visible {
  background: var(--mt-green);
  border-color: var(--mt-green);
  color: #fff;
}
.mt-btn--lg {
  min-height: 60px;
  padding: 0 32px;
  font-size: 15px;
}
@media (min-width: 768px) {
  .mt-btn--lg {
    font-size: 16px;
  }
}
@media (min-width: 1024px) {
  .mt-btn--lg {
    min-height: 74px;
    padding: 0 52px;
    font-size: 18px;
  }
}
.mt-btn--block {
  display: flex;
  width: 100%;
  padding-left: 56px;
  padding-right: 56px;
}
.mt-btn--block .mt-btn__arrow {
  position: absolute;
  right: 22px;
  top: 50%;
  margin-top: -11px;
}
.mt-btn__arrow {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.mt-btn:hover .mt-btn__arrow {
  transform: translateX(3px);
}
.mt-btn:focus-visible {
  outline: 2px solid var(--mt-green);
  outline-offset: 3px;
}

.mt-tag {
  position: absolute;
  left: 20px;
  bottom: 22px;
  min-width: 110px;
  padding: 9px 18px;
  border-radius: 5px;
  background: rgba(22, 59, 49, 0.92);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
}
.mt-tag--accent {
  background: rgba(31, 94, 76, 0.95);
}
@media (min-width: 1024px) {
  .mt-tag {
    min-width: 134px;
    padding: 11px 22px;
    font-size: 15px;
  }
}

.mt-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(252, 250, 245, 0.96);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: box-shadow 0.25s ease;
}
.mt-header.is-scrolled {
  box-shadow: 0 1px 0 var(--mt-line), 0 8px 24px rgba(42, 40, 38, 0.06);
}
.mt-header__inner {
  display: flex;
  align-items: center;
  gap: 24px;
  min-height: var(--mt-header-h);
}
.mt-header__nav {
  display: none;
  margin-left: auto;
  gap: clamp(24px, 4.5vw, 86px);
}
@media (min-width: 1200px) {
  .mt-header__nav {
    display: flex;
  }
}
.mt-header__link {
  position: relative;
  font-size: 16px;
  font-weight: 500;
  color: var(--mt-ink);
  text-decoration: none;
  white-space: nowrap;
}
.mt-header__link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transition: transform 0.25s ease;
}
.mt-header__link:hover {
  color: var(--mt-green);
}
.mt-header__link:hover::after {
  transform: scaleX(1);
}
.mt-header__cta {
  display: none;
  min-height: 60px;
  padding: 0 64px;
  font-size: 15px;
}
@media (min-width: 1024px) {
  .mt-header__cta {
    display: inline-flex;
    margin-left: auto;
  }
}
@media (min-width: 1200px) {
  .mt-header__cta {
    margin-left: clamp(24px, 6vw, 126px);
  }
}

.mt-logo {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--mt-ink);
  text-decoration: none;
}
.mt-logo:hover {
  color: var(--mt-ink);
}
.mt-logo__icon {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
}
.mt-logo__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.mt-logo__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  .mt-logo__title {
    font-size: 21px;
  }
}
.mt-logo__tagline {
  display: none;
  font-size: 12px;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-logo__tagline {
    display: block;
  }
  .mt-logo {
    align-items: flex-start;
  }
  .mt-logo__icon {
    margin-top: 2px;
  }
}

.mt-burger {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 7px;
  width: 44px;
  height: 44px;
  margin-left: auto;
  padding: 0 6px;
  background: none;
  border: 0;
  cursor: pointer;
}
.mt-burger span {
  display: block;
  height: 2px;
  background: var(--mt-ink);
  border-radius: 2px;
  transition: transform 0.25s ease, opacity 0.2s ease;
}
.mt-burger[aria-expanded=true] span:nth-child(1) {
  transform: translateY(9px) rotate(45deg);
}
.mt-burger[aria-expanded=true] span:nth-child(2) {
  opacity: 0;
}
.mt-burger[aria-expanded=true] span:nth-child(3) {
  transform: translateY(-9px) rotate(-45deg);
}
@media (min-width: 1024px) {
  .mt-burger {
    margin-left: 0;
  }
}
@media (min-width: 1200px) {
  .mt-burger {
    display: none;
  }
}

.mt-mobile-menu {
  position: fixed;
  top: var(--mt-header-h);
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99;
  display: flex;
  flex-direction: column;
  gap: 28px;
  padding: 28px var(--mt-pad) 40px;
  overflow-y: auto;
  background: var(--mt-cream);
  border-top: 1px solid var(--mt-line);
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.mt-mobile-menu.is-open {
  opacity: 1;
  transform: none;
}
.mt-mobile-menu[hidden] {
  display: none;
}
.mt-mobile-menu__nav {
  display: flex;
  flex-direction: column;
}
.mt-mobile-menu__link {
  padding: 16px 0;
  border-bottom: 1px solid var(--mt-line);
  font-family: var(--mt-serif);
  font-size: 26px;
  color: var(--mt-ink);
  text-decoration: none;
}
.mt-mobile-menu__link:hover {
  color: var(--mt-green);
}
.mt-mobile-menu__contacts {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mt-mobile-menu__phone {
  font-size: 18px;
  font-weight: 600;
  color: var(--mt-ink);
  text-decoration: none;
}
@media (min-width: 1200px) {
  .mt-mobile-menu {
    display: none !important;
  }
}

body.mt-menu-open {
  overflow: hidden;
}

.mt-hero {
  background: var(--mt-cream);
}
.mt-hero__grid {
  display: grid;
}
@media (min-width: 1024px) {
  .mt-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: clamp(560px, 100vh - var(--mt-header-h) - 110px, 860px);
  }
}
.mt-hero__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 36px var(--mt-pad) 40px;
  background: var(--mt-beige);
}
@media (min-width: 1024px) {
  .mt-hero__content {
    padding: 64px 48px 64px var(--mt-edge);
    background: transparent;
  }
}
.mt-hero__title {
  margin: 0;
  font-family: var(--mt-serif);
  font-weight: 400;
  font-size: 44px;
  line-height: 1.08;
  letter-spacing: -0.015em;
  color: var(--mt-ink);
}
@media (min-width: 768px) {
  .mt-hero__title {
    font-size: 60px;
  }
}
@media (min-width: 1280px) {
  .mt-hero__title {
    font-size: clamp(64px, 4.7vw, 92px);
    line-height: 1.12;
  }
}
.mt-hero__text {
  max-width: 520px;
  margin: 22px 0 0;
  font-size: 17px;
  line-height: 1.55;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-hero__text {
    margin-top: clamp(32px, 6vh, 80px);
    font-size: 22px;
  }
}
.mt-hero__actions {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 28px;
}
.mt-hero__actions .mt-btn {
  width: 100%;
  justify-content: center;
  padding-left: 56px;
  padding-right: 56px;
}
.mt-hero__actions .mt-btn__arrow {
  position: absolute;
  right: 22px;
  top: 50%;
  margin-top: -11px;
}
@media (min-width: 640px) and (max-width: 1023px) {
  .mt-hero__actions {
    flex-direction: row;
  }
  .mt-hero__actions .mt-btn {
    flex: 1;
  }
}
@media (min-width: 1024px) {
  .mt-hero__actions {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 64px;
  }
  .mt-hero__actions .mt-btn {
    width: auto;
    padding: 0 52px;
  }
  .mt-hero__actions .mt-btn__arrow {
    position: static;
    margin: 0;
  }
  .mt-hero__actions .mt-btn__arrow--mobile {
    display: none;
  }
}
.mt-hero__media {
  position: relative;
  aspect-ratio: 4/3.6;
  overflow: hidden;
  background: var(--mt-beige-2);
}
@media (min-width: 1024px) {
  .mt-hero__media {
    aspect-ratio: auto;
  }
}
.mt-hero__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mt-hero__badge {
  position: absolute;
  left: var(--mt-pad);
  bottom: 18px;
  max-width: calc(100% - var(--mt-pad) * 2);
  padding: 10px 18px;
  border-radius: 4px;
  background: rgba(22, 59, 49, 0.94);
  color: #fff;
  font-size: 14px;
  line-height: 1.35;
}
@media (min-width: 1024px) {
  .mt-hero__badge {
    left: auto;
    right: 62px;
    bottom: 30px;
    padding: 14px 28px;
    font-family: var(--mt-serif);
    font-size: 21px;
  }
}
.mt-hero__features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 0;
  padding: 26px 0 30px;
  list-style: none;
}
@media (min-width: 1024px) {
  .mt-hero__features {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 40px 0 44px;
  }
}
.mt-hero__feature {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  line-height: 1.3;
  text-align: center;
  color: var(--mt-ink);
  hyphens: auto;
  -webkit-hyphens: auto;
}
.mt-hero__feature:nth-child(n+4) {
  display: none;
}
@media (min-width: 1024px) {
  .mt-hero__feature {
    flex-direction: row;
    gap: 20px;
    font-size: 19px;
    text-align: left;
  }
  .mt-hero__feature:nth-child(n+4) {
    display: flex;
  }
}
.mt-hero__feature-icon {
  width: 30px;
  height: 30px;
  color: var(--mt-green);
}
@media (min-width: 1024px) {
  .mt-hero__feature-icon {
    width: 36px;
    height: 36px;
  }
}

.mt-problem__card {
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 26px 24px;
}
@media (min-width: 1024px) {
  .mt-problem__card {
    align-items: flex-start;
    padding: 56px 36px 48px;
  }
}
.mt-problem__icon {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  color: var(--mt-green);
}
@media (min-width: 1024px) {
  .mt-problem__icon {
    width: 42px;
    height: 42px;
    margin-top: 2px;
  }
}
.mt-problem__title {
  margin: 0 0 6px;
  font-family: var(--mt-sans);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-problem__title {
    margin-bottom: 18px;
    font-family: var(--mt-serif);
    font-size: 28px;
    font-weight: 500;
  }
}
.mt-problem__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-problem__text {
    font-size: 16px;
    max-width: 340px;
  }
}
.mt-problem__more {
  margin-top: 28px;
}
@media (min-width: 1024px) {
  .mt-problem__more {
    margin-top: 48px;
    text-align: center;
  }
}

.mt-solution__grid {
  display: grid;
  gap: 24px;
  grid-template-areas: "head" "media" "body";
}
@media (min-width: 1024px) {
  .mt-solution__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas: "media head" "media body";
    grid-template-rows: auto 1fr;
    -moz-column-gap: clamp(40px, 4.5vw, 78px);
         column-gap: clamp(40px, 4.5vw, 78px);
    row-gap: 0;
    align-items: start;
  }
}
.mt-solution__head {
  grid-area: head;
}
@media (min-width: 1280px) {
  .mt-solution__title {
    font-size: clamp(48px, 3.6vw, 64px);
    line-height: 1.22;
  }
}
.mt-solution__media {
  grid-area: media;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
@media (min-width: 1024px) {
  .mt-solution__media {
    gap: 24px;
    align-self: center;
  }
}
.mt-solution__photo {
  position: relative;
  margin: 0;
  aspect-ratio: 415/467;
  overflow: hidden;
  border-radius: var(--mt-radius);
}
.mt-solution__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mt-solution__photo .mt-tag {
  left: 10px;
  bottom: 10px;
  min-width: 0;
  padding: 7px 14px;
}
@media (min-width: 1024px) {
  .mt-solution__photo .mt-tag {
    left: 24px;
    bottom: 28px;
    min-width: 134px;
    padding: 11px 22px;
  }
}
.mt-solution__body {
  grid-area: body;
}
@media (min-width: 1024px) {
  .mt-solution__body {
    padding-top: 56px;
  }
}
.mt-solution__btn {
  width: 100%;
  margin-top: 32px;
  justify-content: center;
  padding-left: 56px;
  padding-right: 56px;
}
.mt-solution__btn .mt-btn__arrow {
  position: absolute;
  right: 22px;
  top: 50%;
  margin-top: -11px;
}
@media (min-width: 1024px) {
  .mt-solution__btn {
    width: auto;
    margin-top: 56px;
    padding: 0 80px;
    gap: 56px;
  }
  .mt-solution__btn .mt-btn__arrow {
    position: static;
    margin: 0;
  }
}

.mt-checks {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 1024px) {
  .mt-checks {
    gap: 30px;
  }
}
.mt-checks__item {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  font-size: 15px;
  line-height: 1.45;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-checks__item {
    gap: 24px;
    font-size: 19px;
  }
}
.mt-checks__icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 1px;
  color: var(--mt-green);
}
@media (min-width: 1024px) {
  .mt-checks__icon {
    width: 26px;
    height: 26px;
    margin-top: -2px;
  }
}

.mt-collection__top-link {
  display: none;
}
@media (min-width: 1024px) {
  .mt-collection__top-link {
    display: inline-flex;
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .mt-collection__grid {
    gap: 20px;
  }
}
.mt-collection__mobile-btn {
  margin-top: 28px;
}
@media (min-width: 1024px) {
  .mt-collection__mobile-btn {
    display: none;
  }
}
.mt-collection__bottom {
  margin-top: 20px;
  text-align: left;
}
.mt-collection__bottom .mt-link {
  display: inline;
  font-size: 14px;
  font-weight: 400;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-collection__bottom {
    margin-top: 72px;
    text-align: center;
  }
  .mt-collection__bottom .mt-link {
    display: inline-flex;
    font-size: 18px;
    font-weight: 600;
    color: var(--mt-green);
  }
}

.mt-product {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.mt-product:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(42, 40, 38, 0.08);
}
.mt-product__media {
  display: block;
  aspect-ratio: 532/397;
  overflow: hidden;
  border-radius: var(--mt-radius) var(--mt-radius) 0 0;
}
.mt-product__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}
.mt-product:hover .mt-product__media img {
  transform: scale(1.04);
}
.mt-product__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px 18px 22px;
}
@media (min-width: 1024px) {
  .mt-product__body {
    padding: 28px 28px 32px;
  }
}
.mt-product__title {
  margin: 0 0 12px;
  font-family: var(--mt-serif);
  font-size: 24px;
  font-weight: 400;
  line-height: 1.2;
  color: var(--mt-ink);
}
@media (min-width: 1280px) {
  .mt-product__title {
    font-size: 34px;
    margin-bottom: 18px;
  }
}
.mt-product__text {
  margin: 0 0 22px;
  font-size: 14px;
  line-height: 1.65;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-product__text {
    font-size: 16px;
    margin-bottom: 28px;
  }
}
.mt-product__link {
  margin-top: auto;
  font-size: 14px;
}
@media (min-width: 1024px) {
  .mt-product__link {
    font-size: 17px;
  }
}

.mt-process__grid {
  display: grid;
  gap: 36px;
}
@media (min-width: 1024px) {
  .mt-process__grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr);
    gap: 48px;
    align-items: start;
  }
  .mt-process__aside {
    padding-top: 26px;
  }
}
.mt-process__btn {
  width: 100%;
  margin-top: 24px;
  justify-content: center;
  padding-left: 56px;
  padding-right: 56px;
}
.mt-process__btn .mt-btn__arrow {
  position: absolute;
  right: 22px;
  top: 50%;
  margin-top: -11px;
}
@media (min-width: 1024px) {
  .mt-process__btn {
    width: auto;
    min-width: 370px;
    margin-top: 28px;
    min-height: 58px;
    font-size: 17px;
  }
}

.mt-steps {
  margin: 0;
  padding: 0;
  list-style: none;
}
.mt-steps__item {
  position: relative;
  display: flex;
  gap: 22px;
  padding-bottom: 44px;
}
.mt-steps__item:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 22px;
  top: 46px;
  bottom: 2px;
  width: 1.5px;
  background: #CFC9BF;
}
.mt-steps__item:last-child {
  padding-bottom: 0;
}
@media (min-width: 1024px) {
  .mt-steps__item {
    gap: 38px;
    padding-bottom: 54px;
  }
  .mt-steps__item:not(:last-child)::before {
    left: 32px;
    top: 68px;
  }
}
.mt-steps__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--mt-step-dark);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
}
@media (min-width: 1024px) {
  .mt-steps__num {
    width: 66px;
    height: 66px;
    font-size: 19px;
  }
}
.mt-steps__item--accent .mt-steps__num {
  background: var(--mt-green);
}
.mt-steps__body {
  padding-top: 2px;
}
.mt-steps__title {
  margin: 0 0 8px;
  font-family: var(--mt-sans);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-steps__title {
    font-size: 24px;
    margin-bottom: 14px;
  }
}
.mt-steps__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-steps__text {
    font-size: 16px;
  }
}

.mt-video {
  position: relative;
  aspect-ratio: 847/440;
  overflow: hidden;
  border-radius: var(--mt-radius);
  background: #1d1b19;
}
@media (max-width: 767px) {
  .mt-video {
    aspect-ratio: 422/270;
  }
}
.mt-video__poster,
.mt-video video,
.mt-video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.mt-video__play {
  position: absolute;
  left: 50%;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  margin: -40px 0 0 -40px;
  border: 3px solid rgba(255, 255, 255, 0.92);
  border-radius: 50%;
  background: rgba(20, 18, 16, 0.55);
  color: #fff;
  cursor: pointer;
  transition: transform 0.25s ease, background-color 0.25s ease;
}
.mt-video__play:hover {
  transform: scale(1.06);
  background: rgba(31, 94, 76, 0.85);
}
@media (min-width: 1024px) {
  .mt-video__play {
    width: 128px;
    height: 128px;
    margin: -64px 0 0 -64px;
    border-width: 4px;
  }
}
.mt-video__play-icon {
  width: 34px;
  height: 34px;
  margin-left: 5px;
}
@media (min-width: 1024px) {
  .mt-video__play-icon {
    width: 56px;
    height: 56px;
    margin-left: 8px;
  }
}

.mt-reviews__head {
  margin-bottom: 32px;
}
@media (min-width: 1024px) {
  .mt-reviews__head {
    margin-bottom: 64px;
  }
}
.mt-reviews__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.mt-reviews__track::-webkit-scrollbar {
  display: none;
}
.mt-reviews__track > * {
  scroll-snap-align: start;
}
@media (min-width: 768px) {
  .mt-reviews__track {
    grid-auto-columns: calc(50% - 12px);
    gap: 24px;
  }
}
@media (min-width: 1024px) {
  .mt-reviews__track {
    grid-auto-flow: row;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-columns: auto;
    gap: 36px;
    overflow: visible;
  }
}
.mt-reviews__note {
  display: none;
  margin: 40px 0 0;
  font-size: 13px;
  color: var(--mt-muted);
  text-align: right;
}
@media (min-width: 1024px) {
  .mt-reviews__note {
    display: block;
  }
}

.mt-review {
  display: flex;
  flex-direction: column;
  padding: 26px 24px 22px;
}
@media (min-width: 1024px) {
  .mt-review {
    padding: 40px 38px 34px;
  }
}
.mt-review__stars {
  margin-bottom: 18px;
  font-size: 20px;
  letter-spacing: 2px;
  color: var(--mt-gold);
}
@media (min-width: 1024px) {
  .mt-review__stars {
    font-size: 28px;
    margin-bottom: 26px;
  }
}
.mt-review__text {
  flex: 1;
  margin: 0 0 22px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-review__text {
    font-size: 19px;
    line-height: 1.95;
    margin-bottom: 40px;
  }
}
.mt-review__author {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-top: 18px;
  border-top: 1px solid var(--mt-line);
  font-size: 13px;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-review__author {
    padding-top: 22px;
  }
}
.mt-review__avatar {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #E2EAE6;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 1024px) {
  .mt-review__avatar {
    width: 30px;
    height: 30px;
  }
}

.mt-dots {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 24px;
}
@media (min-width: 1024px) {
  .mt-dots {
    display: none;
  }
}
.mt-dots__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #D7D1C7;
  transition: background-color 0.2s ease;
}
.mt-dots__dot.is-active {
  background: var(--mt-green);
}

.mt-stat {
  display: flex;
  align-items: center;
  gap: 22px;
  border-radius: var(--mt-radius);
}
.mt-stat__value {
  font-family: var(--mt-serif);
  font-size: 34px;
  line-height: 1;
  color: var(--mt-green);
  white-space: nowrap;
  font-variant-numeric: lining-nums;
}
@media (min-width: 1024px) {
  .mt-stat__value {
    font-size: 44px;
  }
}
.mt-stat__text {
  font-size: 13px;
  line-height: 1.5;
  color: var(--mt-muted);
}
.mt-stat__text small {
  font-size: 12px;
}
.mt-stat--top {
  display: none;
  flex-shrink: 0;
  padding: 26px 36px;
  background: var(--mt-card);
}
.mt-stat--top .mt-stat__text {
  max-width: 140px;
  font-size: 14px;
}
@media (min-width: 1024px) {
  .mt-stat--top {
    display: flex;
    margin-bottom: -10px;
  }
}
.mt-stat--bottom {
  margin-top: 28px;
  padding: 26px 28px;
  background: var(--mt-sage);
}
@media (min-width: 1024px) {
  .mt-stat--bottom {
    display: none;
  }
}

.mt-guarantee {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  padding: 26px 24px;
}
@media (min-width: 1024px) {
  .mt-guarantee {
    gap: 28px;
    padding: 56px 36px 50px;
  }
}
.mt-guarantee__icon {
  width: 28px;
  height: 28px;
  color: var(--mt-green);
}
@media (min-width: 1024px) {
  .mt-guarantee__icon {
    width: 40px;
    height: 40px;
    margin-top: -2px;
  }
}
.mt-guarantee__title {
  margin: 0 0 8px;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-guarantee__title {
    font-size: 23px;
    margin-bottom: 16px;
  }
}
.mt-guarantee__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-guarantee__text {
    font-size: 16px;
    max-width: 290px;
  }
}

.mt-guarantees__more {
  margin-top: 32px;
}
@media (min-width: 1024px) {
  .mt-guarantees__more {
    margin-top: 44px;
    text-align: center;
  }
}
.mt-guarantees__btn {
  gap: 54px;
}
@media (min-width: 1024px) {
  .mt-guarantees__btn {
    min-width: 460px;
    min-height: 60px;
    font-size: 17px;
  }
}
@media (max-width: 767px) {
  .mt-guarantees {
    background: var(--mt-green-dark);
  }
  .mt-guarantees .mt-eyebrow {
    color: rgba(255, 255, 255, 0.7);
  }
  .mt-guarantees .mt-title {
    color: #fff;
  }
  .mt-guarantees .mt-grid-3 {
    gap: 0;
  }
  .mt-guarantees .mt-guarantee {
    padding: 14px 0 22px;
    background: transparent;
  }
  .mt-guarantees .mt-guarantee__icon {
    color: rgba(255, 255, 255, 0.9);
  }
  .mt-guarantees .mt-guarantee__title {
    color: #fff;
  }
  .mt-guarantees .mt-guarantee__text {
    color: rgba(255, 255, 255, 0.72);
  }
  .mt-guarantees__more {
    margin-top: 18px;
  }
  .mt-guarantees__btn {
    min-height: 0;
    padding: 0;
    border: 0;
    background: none;
    color: #fff;
    font-size: 15px;
    gap: 8px;
  }
  .mt-guarantees__btn .mt-btn__arrow {
    width: 18px;
    height: 18px;
  }
  .mt-guarantees__btn:hover {
    background: none;
    color: #fff;
  }
}

.mt-faq__grid {
  display: grid;
  gap: 24px;
}
@media (min-width: 1024px) {
  .mt-faq__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
    gap: 48px;
    align-items: start;
  }
}
.mt-faq__media {
  display: none;
  overflow: hidden;
  border-radius: var(--mt-radius);
}
.mt-faq__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 693/456;
}
@media (min-width: 1024px) {
  .mt-faq__media {
    display: block;
    position: sticky;
    top: calc(var(--mt-header-h) + 24px);
    margin-top: 12px;
  }
}
.mt-faq__list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.mt-faq__more {
  margin-top: 26px;
}
@media (min-width: 1024px) {
  .mt-faq__more {
    margin-top: 10px;
  }
}

.mt-accordion {
  background: var(--mt-card);
  border-radius: var(--mt-radius);
}
.mt-accordion__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  width: 100%;
  min-height: 74px;
  padding: 18px 20px;
  border: 0;
  background: none;
  font-family: var(--mt-sans);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-align: left;
  color: var(--mt-ink);
  cursor: pointer;
}
@media (min-width: 1024px) {
  .mt-accordion__head {
    min-height: 72px;
    padding: 20px 46px 20px 32px;
    font-size: 18px;
  }
}
.mt-accordion__head:focus-visible {
  outline: 2px solid var(--mt-green);
  outline-offset: -2px;
  border-radius: var(--mt-radius);
}
.mt-accordion__sign {
  position: relative;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.mt-accordion__sign::before, .mt-accordion__sign::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1.5px;
  margin-top: -0.75px;
  background: var(--mt-ink);
  transition: transform 0.25s ease;
}
.mt-accordion__sign::after {
  transform: rotate(90deg);
}
.mt-accordion.is-open .mt-accordion__sign::after {
  transform: rotate(0deg);
}
.mt-accordion__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.mt-accordion__panel > div {
  overflow: hidden;
}
.mt-accordion.is-open .mt-accordion__panel {
  grid-template-rows: 1fr;
}
.mt-accordion__body {
  padding: 0 20px;
  font-size: 13px;
  line-height: 1.65;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-accordion__body {
    padding: 0 32px;
    font-size: 16px;
  }
}
.mt-accordion__body ul, .mt-accordion__body ol {
  margin: 8px 0;
  padding-left: 20px;
}
.mt-accordion__body p {
  margin: 0 0 8px;
}
.mt-accordion.is-open .mt-accordion__body {
  padding-bottom: 22px;
}
@media (min-width: 1024px) {
  .mt-accordion.is-open .mt-accordion__body {
    padding-bottom: 30px;
  }
}

.mt-lead {
  display: grid;
  background: var(--mt-beige-2);
}
@media (min-width: 1024px) {
  .mt-lead {
    grid-template-columns: 47% 53%;
  }
}
.mt-lead__visual {
  position: relative;
  padding: var(--mt-section-y) var(--mt-pad) 24px;
}
@media (max-width: 1023px) {
  .mt-lead__visual {
    background-image: none !important;
  }
}
@media (min-width: 1024px) {
  .mt-lead__visual {
    display: flex;
    align-items: center;
    padding: 120px 48px 72px var(--mt-edge);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .mt-lead__visual::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(237, 230, 219, 0.86) 0%, rgba(237, 230, 219, 0.66) 55%, rgba(237, 230, 219, 0.3) 100%);
  }
}
.mt-lead__intro {
  position: relative;
  z-index: 1;
}
@media (min-width: 1280px) {
  .mt-lead__title {
    font-size: clamp(52px, 3.6vw, 66px);
    line-height: 1.2;
  }
}
.mt-lead__text {
  max-width: 560px;
  margin: 28px 0 0;
  font-size: 15px;
  line-height: 1.6;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-lead__text {
    margin-top: clamp(48px, 9vh, 120px);
    font-size: 20px;
    color: var(--mt-ink);
  }
}
.mt-lead__features {
  display: none;
  flex-wrap: wrap;
  gap: 18px 56px;
  margin: 72px 0 0;
  padding: 0;
  list-style: none;
}
.mt-lead__features li {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 15px;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-lead__features {
    display: flex;
  }
}
.mt-lead__feature-icon {
  width: 30px;
  height: 30px;
  color: var(--mt-green);
}
.mt-lead__photo {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 28px;
  aspect-ratio: 422/230;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--mt-radius);
}
@media (min-width: 1024px) {
  .mt-lead__photo {
    display: none;
  }
}
.mt-lead__side {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 var(--mt-pad) var(--mt-section-y);
}
@media (min-width: 1024px) {
  .mt-lead__side {
    padding: 72px var(--mt-edge) 72px 48px;
  }
}

.mt-form {
  position: relative;
  width: 100%;
  max-width: 784px;
  padding: 28px 22px 16px;
  border-radius: 14px;
  background: var(--mt-card);
}
@media (min-width: 1024px) {
  .mt-form {
    padding: 44px 52px 10px;
    border-radius: 16px;
  }
}
.mt-form__title {
  display: none;
  margin: 0 0 18px;
  font-family: var(--mt-serif);
  font-size: 28px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--mt-ink);
}
@media (min-width: 768px) {
  .mt-form__title {
    display: block;
  }
}
@media (min-width: 1280px) {
  .mt-form__title {
    font-size: 38px;
  }
}
.mt-form__hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.mt-form__submit {
  margin-top: 4px;
}
@media (min-width: 1024px) {
  .mt-form__submit {
    min-height: 70px;
    margin-top: 22px;
    font-size: 19px;
  }
}
.mt-form__submit[disabled] {
  opacity: 0.65;
  cursor: progress;
}
.mt-form__agree {
  margin: 12px 0 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--mt-muted);
}
.mt-form__agree a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mt-form__agree a:hover {
  color: var(--mt-green);
}
.mt-form__status {
  min-height: 0;
  margin-top: 8px;
  font-size: 13px;
}
.mt-form__status.is-error {
  color: #A43B2F;
}
.mt-form__success {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 32px;
  border-radius: inherit;
  background: var(--mt-card);
  text-align: center;
}
.mt-form__success[hidden] {
  display: none;
}
.mt-form__success p {
  margin: 0;
  max-width: 380px;
  font-family: var(--mt-serif);
  font-size: 24px;
  line-height: 1.35;
  color: var(--mt-ink);
}
.mt-form__success-icon {
  width: 56px;
  height: 56px;
  padding: 12px;
  border-radius: 50%;
  background: var(--mt-sage);
  color: var(--mt-green);
}

.mt-field {
  display: block;
  margin-bottom: 14px;
}
@media (min-width: 1024px) {
  .mt-field {
    margin-bottom: 20px;
  }
}
.mt-field__label {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-field__label {
    margin-bottom: 14px;
    font-size: 15px;
  }
}
.mt-field__input {
  display: block;
  width: 100%;
  height: 50px;
  padding: 0 18px;
  border: 1px solid var(--mt-line);
  border-radius: 7px;
  background: #F6F4EF;
  font-family: var(--mt-sans);
  font-size: 15px;
  color: var(--mt-ink);
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
.mt-field__input::-moz-placeholder {
  color: #9A958D;
  opacity: 1;
}
.mt-field__input::placeholder {
  color: #9A958D;
  opacity: 1;
}
.mt-field__input:hover {
  cursor: text;
  border-color: #D5CDBF;
}
.mt-field__input:focus {
  border-color: var(--mt-green);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(31, 94, 76, 0.12);
}
@media (min-width: 1024px) {
  .mt-field__input {
    height: 66px;
    padding: 0 26px;
    font-size: 16px;
  }
}
.mt-field.is-invalid .mt-field__input {
  border-color: #C0574A;
}
.mt-field__error {
  display: block;
  min-height: 0;
  margin-top: 4px;
  font-size: 12px;
  color: #A43B2F;
}
.mt-field__error:empty {
  display: none;
}

.mt-select {
  position: relative;
  display: block;
}
.mt-select__control {
  padding-right: 48px;
  cursor: pointer;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}
.mt-select__control:hover {
  cursor: pointer;
}
.mt-select__control.is-placeholder {
  color: #9A958D;
}
.mt-select__chevron {
  position: absolute;
  right: 18px;
  top: 50%;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  color: var(--mt-muted);
  pointer-events: none;
}

.mt-footer {
  padding: 44px 0 28px;
  background: var(--mt-green-dark);
  color: rgba(255, 255, 255, 0.82);
}
@media (min-width: 1024px) {
  .mt-footer {
    padding: 72px 0 40px;
  }
}
.mt-footer__top {
  display: grid;
  gap: 34px;
}
@media (min-width: 768px) {
  .mt-footer__top {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .mt-footer__top {
    grid-template-columns: 1.55fr 1fr 1.05fr 0.7fr;
    gap: 40px;
  }
}
.mt-footer__logo {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #fff;
  text-decoration: none;
}
.mt-footer__logo:hover {
  color: #fff;
}
.mt-footer__logo-icon {
  width: 34px;
  height: 34px;
}
.mt-footer__logo-title {
  font-family: var(--mt-serif);
  font-size: 24px;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  .mt-footer__logo-title {
    font-size: 30px;
  }
}
.mt-footer__tagline {
  margin: 14px 0 0;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.8);
}
.mt-footer__title {
  margin-bottom: 18px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #fff;
}
@media (min-width: 1024px) {
  .mt-footer__title {
    margin-bottom: 26px;
    font-size: 16px;
    letter-spacing: 0.02em;
  }
}
.mt-footer__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .mt-footer__list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px 18px;
  }
}
@media (min-width: 1024px) {
  .mt-footer__list {
    gap: 16px;
  }
}
.mt-footer__link, .mt-footer__text {
  font-size: 14px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.78);
  text-decoration: none;
}
@media (min-width: 1024px) {
  .mt-footer__link, .mt-footer__text {
    font-size: 15px;
  }
}
.mt-footer__link:hover {
  color: #fff;
}
.mt-footer__bottom {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 36px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  font-size: 13px;
  color: rgba(255, 255, 255, 0.72);
}
@media (min-width: 768px) {
  .mt-footer__bottom {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .mt-footer__bottom {
    margin-top: 64px;
    padding-top: 36px;
  }
}
.mt-footer__legal {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (min-width: 768px) {
  .mt-footer__legal {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px 0;
  }
}
.mt-footer__legal-link {
  color: inherit;
  text-decoration: none;
}
.mt-footer__legal-link:hover {
  color: #fff;
}
@media (min-width: 768px) {
  .mt-footer__legal-link + .mt-footer__legal-link::before {
    content: "•";
  }
}
.mt-footer__legal-link + .mt-footer__legal-link::before {
  margin: 0 8px;
  color: rgba(255, 255, 255, 0.5);
}

.mt-js .mt-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.mt-js .mt-reveal.is-visible {
  opacity: 1;
  transform: none;
}

.mt-js .mt-product.mt-reveal.is-visible {
  transition: opacity 0.7s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.mt-js .mt-product.mt-reveal.is-visible:hover {
  transform: translateY(-3px);
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  .mt-js .mt-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .mt-product, .mt-product__media img, .mt-btn, .mt-video__play {
    transition: none;
  }
}
.mt-consents {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 6px 0 16px;
}
.mt-consents > .mt-field__error {
  margin-top: -4px;
}

.mt-check {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid var(--mt-line);
  border-radius: 8px;
  background: #F8F4EC;
  font-size: 13px;
  line-height: 1.5;
  color: var(--mt-ink);
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
@media (min-width: 1024px) {
  .mt-check {
    padding: 14px 18px;
    font-size: 14px;
  }
}
.mt-check:hover {
  border-color: #D5CDBF;
}
.mt-check__input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}
.mt-check__box {
  position: relative;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin-top: 1px;
  border: 1.5px solid #9C968C;
  border-radius: 4px;
  background: #fff;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.mt-check__box::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) scale(0);
  transition: transform 0.15s ease;
}
.mt-check__input:checked + .mt-check__box {
  background: var(--mt-green);
  border-color: var(--mt-green);
}
.mt-check__input:checked + .mt-check__box::after {
  transform: rotate(45deg) scale(1);
}
.mt-check__input:focus-visible + .mt-check__box {
  outline: 2px solid var(--mt-green);
  outline-offset: 2px;
}
.mt-check__text a {
  color: var(--mt-ink);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mt-check__text a:hover {
  color: var(--mt-green);
}
.mt-check__req {
  margin-left: 2px;
  color: #B4473A;
}
.mt-check.is-invalid {
  border-color: #C0574A;
  background: #FBF1EE;
}

.mt-captcha {
  margin-bottom: 16px;
  min-height: 102px;
}
.mt-captcha > .mt-field__error {
  margin-top: 6px;
}

.mt-cookies {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 200;
  padding: 0 12px 12px;
  pointer-events: none;
}
@media (min-width: 768px) {
  .mt-cookies {
    padding: 0 24px 24px;
  }
}
.mt-cookies[hidden] {
  display: none;
}
.mt-cookies__panel {
  display: grid;
  gap: 16px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 20px 18px 18px;
  border: 1px solid var(--mt-line);
  border-radius: 16px;
  background: var(--mt-card);
  box-shadow: 0 18px 50px rgba(42, 40, 38, 0.14);
  pointer-events: auto;
  animation: mt-cookies-in 0.35s ease;
  max-height: calc(100vh - 24px);
  overflow-y: auto;
}
@media (min-width: 900px) {
  .mt-cookies__panel {
    grid-template-columns: 1fr 384px;
    gap: 20px 28px;
    padding: 24px 20px 20px;
  }
}
.mt-cookies__main {
  min-width: 0;
}
.mt-cookies__eyebrow {
  margin-bottom: 10px;
  color: var(--mt-ink);
}
.mt-cookies__title {
  margin: 0 0 10px;
  font-family: var(--mt-sans);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-cookies__title {
    font-size: 20px;
  }
}
.mt-cookies__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
  color: var(--mt-muted);
}
@media (min-width: 1024px) {
  .mt-cookies__text {
    font-size: 14px;
    max-width: 760px;
  }
}
.mt-cookies__more {
  margin: 10px 0 0;
  font-size: 12px;
  color: var(--mt-muted);
}
.mt-cookies__more a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mt-cookies__more a:hover {
  color: var(--mt-green);
}
.mt-cookies__options {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 16px;
  border: 1px solid var(--mt-line);
  border-radius: 12px;
}
.mt-cookies__option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  padding-left: 8px;
  font-size: 14px;
  color: var(--mt-ink);
  cursor: pointer;
}
.mt-cookies__option--fixed {
  padding-left: 0;
  cursor: default;
}
.mt-cookies__badge {
  padding: 3px 9px;
  border-radius: 999px;
  background: #D7E7DE;
  color: var(--mt-green-dark);
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.mt-cookies__toggle {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  position: relative;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  border: 1.5px solid #9C968C;
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
}
.mt-cookies__toggle::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) scale(0);
  transition: transform 0.15s ease;
}
.mt-cookies__toggle:checked {
  background: var(--mt-green);
  border-color: var(--mt-green);
}
.mt-cookies__toggle:checked::after {
  transform: rotate(45deg) scale(1);
}
.mt-cookies__toggle:focus-visible {
  outline: 2px solid var(--mt-green);
  outline-offset: 2px;
}
.mt-cookies__actions {
  display: grid;
  gap: 10px;
}
@media (min-width: 640px) {
  .mt-cookies__actions {
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
  }
}
@media (min-width: 900px) {
  .mt-cookies__actions {
    grid-column: 1/-1;
  }
}
.mt-cookies__btn {
  min-height: 46px;
  padding: 0 16px;
  border: 1px solid #CFC8BC;
  border-radius: 10px;
  background: transparent;
  font-family: var(--mt-sans);
  font-size: 14px;
  font-weight: 500;
  color: var(--mt-ink);
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.mt-cookies__btn:hover {
  border-color: var(--mt-green);
  color: var(--mt-green);
}
.mt-cookies__btn:focus-visible {
  outline: 2px solid var(--mt-green);
  outline-offset: 2px;
}
.mt-cookies__btn--accent {
  border-color: var(--mt-green);
  background: var(--mt-green);
  color: #fff;
}
.mt-cookies__btn--accent:hover {
  background: var(--mt-green-hover);
  color: #fff;
}
@media (min-width: 640px) {
  .mt-cookies__btn--accent {
    order: 3;
  }
}

@keyframes mt-cookies-in {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.mt-footer__cookie-btn {
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

.mt-legal {
  padding: 40px 0 var(--mt-section-y);
  background: var(--mt-cream);
}
@media (min-width: 1024px) {
  .mt-legal {
    padding-top: 64px;
  }
}
.mt-legal__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
}
@media (min-width: 1024px) {
  .mt-legal__grid {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 64px;
    align-items: start;
  }
  .mt-legal__aside {
    position: sticky;
    top: calc(var(--mt-header-h) + 24px);
  }
}
.mt-legal__back {
  font-size: 15px;
}
.mt-legal__nav {
  display: flex;
  gap: 8px;
  margin-top: 18px;
  overflow-x: auto;
  scrollbar-width: none;
}
.mt-legal__nav::-webkit-scrollbar {
  display: none;
}
@media (min-width: 1024px) {
  .mt-legal__nav {
    flex-direction: column;
    gap: 4px;
    margin-top: 28px;
    overflow: visible;
  }
}
.mt-legal__nav-link {
  flex-shrink: 0;
  padding: 9px 14px;
  border: 1px solid var(--mt-line);
  border-radius: 999px;
  font-size: 13px;
  color: var(--mt-ink);
  text-decoration: none;
  white-space: nowrap;
}
.mt-legal__nav-link:hover {
  color: var(--mt-green);
  border-color: var(--mt-green);
}
.mt-legal__nav-link.is-active {
  background: var(--mt-green);
  border-color: var(--mt-green);
  color: #fff;
}
@media (min-width: 1024px) {
  .mt-legal__nav-link {
    padding: 12px 16px;
    border: 0;
    border-radius: 8px;
    font-size: 15px;
    white-space: normal;
  }
  .mt-legal__nav-link:hover {
    background: var(--mt-beige);
  }
  .mt-legal__nav-link.is-active {
    background: var(--mt-beige);
    color: var(--mt-green);
    font-weight: 600;
  }
}
.mt-legal__doc {
  max-width: 860px;
  padding: 28px 20px;
  border-radius: 16px;
  background: var(--mt-card);
}
@media (min-width: 768px) {
  .mt-legal__doc {
    padding: 48px 56px 56px;
  }
}
.mt-legal__title {
  margin-bottom: 10px;
  font-size: 28px;
  hyphens: auto;
  -webkit-hyphens: auto;
}
@media (min-width: 768px) {
  .mt-legal__title {
    font-size: 42px;
  }
}
@media (min-width: 1280px) {
  .mt-legal__title {
    font-size: 48px;
  }
}
.mt-legal__date {
  margin: 0 0 32px;
  font-size: 13px;
  color: var(--mt-muted);
}
.mt-legal__content {
  font-size: 15px;
  line-height: 1.75;
  color: var(--mt-ink);
}
@media (min-width: 1024px) {
  .mt-legal__content {
    font-size: 16px;
  }
}
.mt-legal__content h2, .mt-legal__content h3 {
  margin: 32px 0 12px;
  font-family: var(--mt-serif);
  font-weight: 500;
  line-height: 1.3;
}
.mt-legal__content h2 {
  font-size: 22px;
}
@media (min-width: 1024px) {
  .mt-legal__content h2 {
    font-size: 26px;
  }
}
.mt-legal__content h3 {
  font-size: 19px;
}
.mt-legal__content > :first-child {
  margin-top: 0;
}
.mt-legal__content p {
  margin: 0 0 12px;
}
.mt-legal__content ul, .mt-legal__content ol {
  margin: 0 0 14px;
  padding-left: 22px;
}
.mt-legal__content li {
  margin-bottom: 6px;
}
.mt-legal__content a {
  color: var(--mt-green);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mt-legal__content a:hover {
  color: var(--mt-green-hover);
}
.mt-legal__content mark {
  padding: 0 3px;
  border-radius: 3px;
  background: #F6E3A8;
}
.mt-legal__content table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 16px;
  font-size: 14px;
}
.mt-legal__content th, .mt-legal__content td {
  padding: 8px 10px;
  border: 1px solid var(--mt-line);
  text-align: left;
}
