@layer base,component,mod;
@layer base {
  :root {
    --swiper-theme-color: #007aff;
  }
  :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;
    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: translateZ(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;
  }
  .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;
  }
  .swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
  }
  .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
  }
  .swiper-3d {
    perspective: 1200px;
  }
  .swiper-3d .swiper-slide,
  .swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
  .swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
  }
  .swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  .swiper-css-mode.swiper-horizontal > .swiper-wrapper {
    scroll-snap-type: x mandatory;
  }
  .swiper-css-mode.swiper-vertical > .swiper-wrapper {
    scroll-snap-type: y mandatory;
  }
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    scroll-snap-type: none;
  }
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: none;
  }
  .swiper-css-mode.swiper-centered > .swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999;
  }
  .swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
  }
  .swiper-css-mode.swiper-centered.swiper-horizontal
    > .swiper-wrapper
    > .swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start: var(--swiper-centered-offset-before);
  }
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after);
  }
  .swiper-css-mode.swiper-centered.swiper-vertical
    > .swiper-wrapper
    > .swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start: var(--swiper-centered-offset-before);
  }
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after);
  }
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-3d .swiper-slide-shadow {
    background: #00000026;
  }
  .swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, #00000080, #0000);
  }
  .swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, #00000080, #0000);
  }
  .swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, #00000080, #0000);
  }
  .swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, #00000080, #0000);
  }
  .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-lazy-preloader,
  .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(0);
    }
    to {
      transform: rotate(360deg);
    }
  }
}
:root {
  --spacing: 100px;
  --font-primary:
    "HelveticaNeueCyr", sans-serif, -apple-system, blinkmacsystemfont, roboto,
    ubuntu, "Droid Sans", "Helvetica Neue", arial, sans-serif,
    "Apple Color Emoji";
  --font-secondary:
    "PlayfairDisplay", sans-serif, -apple-system, blinkmacsystemfont, roboto,
    ubuntu, "Droid Sans", "Helvetica Neue", arial, sans-serif,
    "Apple Color Emoji";
}
:root {
  --color-primary: #1e2628;
  --color-primary--rgb: 30, 38, 40;
  --color-alt: #ec7945;
  --color-alt--rgb: 236, 121, 69;
  --color-alt-hover: #e26127;
  --color-alt-hover--rgb: 226, 97, 39;
  --color-gry: #454c4f;
  --color-gry--rgb: 69, 76, 79;
  --color-blck: #121313;
  --color-blck--rgb: 18, 19, 19;
  --color-gry-dark: #999690;
  --color-gry-dark--rgb: 153, 150, 144;
  --color-gry-whte: #ba9;
  --color-gry-whte--rgb: 187, 170, 153;
  --color-gld: #ac9f86;
  --color-gld--rgb: 172, 159, 134;
  --color-whte: #fff;
  --color-whte--rgb: 255, 255, 255;
  --color-whte-two: #f6f3ed;
  --color-whte-two--rgb: 246, 243, 237;
  --color-bg: #f6f3ed;
  --color-bg--rgb: 246, 243, 237;
  --color-bg-secondary: #1e2628;
  --color-bg-secondary--rgb: 30, 38, 40;
  --color-success: #25d366;
  --color-success--rgb: 37, 211, 102;
  --color-error: #f00;
  --color-error--rgb: 255, 0, 0;
  --font-size-default: 14px;
  --index-1: 100;
  --index-2: 200;
  --index-3: 1200;
  --index-4: 1300;
}
@layer base {
  * {
    margin: 0;
    padding: 0;
    border: 0;
  }
  *,
  *:before,
  *:after {
    box-sizing: border-box;
  }
  *:before,
  *:after {
    display: inline-block;
  }
  html,
  body {
    min-width: 360px;
    height: 100%;
    scroll-behavior: smooth;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    scrollbar-gutter: stable;
  }
  body {
    color: var(--color-primary);
    font-size: var(--font-size-default);
    font-family: var(--font-primary);
    line-height: 1;
    background: var(--color-bg);
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  ::-webkit-scrollbar {
    width: 6px;
    height: 5px;
  }
  ::-webkit-scrollbar-track {
    background: var(--color-scroll-bg);
  }
  ::-webkit-scrollbar-thumb {
    background: var(--color-alt);
    border-radius: 10px;
  }
  ::selection {
    color: var(--color-whte);
    background: var(--color-alt);
  }
  input,
  button,
  textarea {
    font-size: inherit;
    font-family: var(--font-primary);
    line-height: inherit;
  }
  button {
    color: inherit;
    font-family: var(--font-primary);
    background-color: transparent;
    outline: 0;
    cursor: pointer;
  }
  div[class*="__text"] p:only-of-type,
  div[class*="__text"] p:last-of-type,
  div[class*="__details"] p:only-of-type,
  div[class*="__details"] p:last-of-type,
  div[class*="__note"] p:only-of-type,
  div[class*="__note"] p:last-of-type {
    margin: 0;
  }
  [class*="image"] img {
    width: 100%;
    object-fit: cover;
    object-position: center;
  }
  a {
    display: inline-block;
    color: inherit;
    text-decoration: none;
  }
  ul li {
    list-style: none;
  }
  img {
    vertical-align: top;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-weight: inherit;
    font-size: inherit;
  }
  address,
  cite {
    font-style: normal;
  }
  fieldset,
  dl,
  dd {
    margin: 0;
    padding: 0;
  }
  fieldset {
    border: none;
  }
}
.lock body {
  overflow: hidden;
  touch-action: none;
  overscroll-behavior: none;
}

body:after {
  position: fixed;
  top: 0;
  left: 0;
  z-index: calc(var(--index-3) - 1);
  width: 100%;
  height: 100%;
  background: rgba(var(--color-whte--rgb), 0.01);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  opacity: 0;
  transition: opacity 0.8s ease 0s;
  content: "";
  pointer-events: none;
}
[data-popup].popup-open {
  pointer-events: none;
}
.popup-show body:after {
  opacity: 1;
}
.header {
  position: fixed;
  top: 5px;
  left: 0;
  width: 100%;
  z-index: calc(var(--index-3) + 1);
}
.header._scroll .header__inner {
  background: var(--color-whte);
}
.header._scroll .menu__logo img,
.header._scroll .menu__logo picture {
  filter: brightness(1) invert(0);
}
.header._scroll .menu__btn span,
.header._scroll .menu__btn:before,
.header._scroll .menu__btn:after {
  background-color: var(--color-primary);
}
.header._scroll .menu__item {
  color: var(--color-primary);
}
.header._scroll .menu__item:after {
  content: "";
  background: var(--color-primary);
}
.header._scroll .menu__item._active {
  color: var(--color-alt);
}
.header._scroll .menu__item._active:after {
  content: "";
  background: var(--color-alt);
}
.header._scroll .menu__phone {
  color: var(--color-primary);
}
.header._scroll .menu__favorites:before {
  content: "";
  background: var(--color-primary);
}
.header.header--two .header__inner {
  background: var(--color-whte);
}
.header.header--two .menu__logo img,
.header.header--two .menu__logo picture {
  filter: brightness(1) invert(0);
}
.header.header--two .menu__btn span,
.header.header--two .menu__btn:before,
.header.header--two .menu__btn:after {
  background-color: var(--color-primary);
}
.header.header--two .menu__item {
  color: var(--color-primary);
}
.header.header--two .menu__item:after {
  content: "";
  background: var(--color-primary);
}
.header.header--two .menu__item._active {
  color: var(--color-alt);
}
.header.header--two .menu__item._active:after {
  content: "";
  background: var(--color-alt);
}
.header.header--two .menu__phone {
  color: var(--color-primary);
}
.header.header--two .menu__favorites:before {
  content: "";
  background: var(--color-primary);
}
.header._active .header__inner {
  background: var(--color-whte);
}
.header._active .menu__logo img,
.header._active .menu__logo picture {
  filter: brightness(1) invert(0);
}
.header._active .menu__item {
  color: var(--color-primary);
}
.header._active .menu__item:after {
  content: "";
  background: var(--color-primary);
}
.header._active .menu__item._active {
  color: var(--color-alt);
}
.header._active .menu__item._active:after {
  content: "";
  background: var(--color-alt);
}
.header._active .menu__phone {
  color: var(--color-primary);
}
.header._active .menu__favorites:before {
  content: "";
  background: var(--color-primary);
}
.header__inner {
  border-radius: 20px;
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  background: rgba(var(--color-whte--rgb), 0.1);
  padding: 18px 24px 0;
  transition: all 0.3s ease-in 0s;
  overflow: hidden;
}
.menu__constructor {
  display: flex;
  align-items: center;
  gap: 63px;
}
.menu__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding-bottom: 18px;
}
.menu__logo {
  width: 98.4px;
  height: 40.2px;
  flex: 0 0 98.4px;
}
.menu__logo img,
.menu__logo picture {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  filter: brightness(0) invert(1);
  transition: all 0.3s ease-in 0s;
}
.menu__items {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 40px;
}
.menu__item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 550;
  color: var(--color-whte);
  transition: all 0.3s ease-in 0s;
}
.menu__item:after {
  content: "";
  mask: var(--icon) center center/contain no-repeat;
  -webkit-mask: var(--icon) center center/contain no-repeat;
  background: var(--color-whte);
  --size: 24px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
  margin-top: -2px;
  transition: all 0.3s ease-in 0s;
}
.menu__item.menu__item--mobile._active:after {
  content: "";
  transform: rotate(0);
}
.menu__item._active:after {
  content: "";
  transform: rotate(180deg);
}
.menu__info {
  display: flex;
  align-items: center;
  gap: 30px;
}
.menu__phone {
  font-weight: 550;
  color: var(--color-whte);
  transition: all 0.3s ease-in 0s;
  white-space: nowrap;
}
.menu__favorites {
  position: relative;
}
.menu__favorites:before {
  content: "";
  mask: var(--icon) center center/contain no-repeat;
  -webkit-mask: var(--icon) center center/contain no-repeat;
  background: var(--color-whte);
  --size: 24px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
  transition: all 0.3s ease-in 0s;
}
.menu__favorites span {
  --size: 8px;
  width: var(--size);
  height: var(--size);
  background: var(--color-alt);
  display: flex;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: -5px;
  transition: all 0.3s ease-in 0s;
}
.menu__link {
  display: flex;
  align-items: center;
  gap: 10px;
}
.menu__link:before {
  content: "";
  background: var(--color-whte);
  --size: 24px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
  mask: var(--icon) center center/contain no-repeat;
  -webkit-mask: var(--icon) center center/contain no-repeat;
}
.block-menu {
  overflow: auto;
  max-height: calc(100dvh - 148px);
}
.block-menu::-webkit-scrollbar {
  display: none;
}
.block-menu__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding-bottom: 12px;
  padding-top: 10px;
}
.block-menu__back {
  font-weight: 550;
  display: flex;
  align-items: center;
  gap: 4px;
}
.block-menu__back:before {
  content: "";
  mask: var(--icon) center center/contain no-repeat;
  -webkit-mask: var(--icon) center center/contain no-repeat;
  background: var(--color-primary);
  --size: 24px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
  margin-top: -2px;
}
.block-menu__content {
  display: flex;
  flex-direction: column;
  gap: 23px;
}
.block-menu__row {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px;
}
.block-menu__row.block-menu__row--two {
  grid-template-columns: 1fr;
}
.block-menu__row.block-menu__row--two .block-menu__column .block-menu__items {
  grid-template-columns: repeat(2, 1fr);
}
.block-menu__row.block-menu__row--three {
  grid-template-columns: repeat(1, 1fr);
}
.block-menu__column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.block-menu__column.block-menu__column--big .block-menu__items {
  grid-template-columns: repeat(2, 1fr) !important;
}
.block-menu__category {
  font-family: var(--font-secondary);
}
.block-menu__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 20px;
}
.block-menu__item {
  display: flex;
  align-items: center;
  gap: 16px;
  transition: all 0.3s ease-in 0s;
}
.block-menu__img {
  border-radius: 16px;
  overflow: hidden;
  --size: 48px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
}
.block-menu__img img,
.block-menu__img picture {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in 0s;
}
.block-menu__name {
  transition: all 0.3s ease-in 0s;
}
.block-menu__info {
  padding-top: 23px;
  border-top: 1px solid rgba(var(--color-primary--rgb), 0.2);
  display: flex;
  flex-direction: column;
  gap: 36px;
}
.block-menu__title {
  font-family: var(--font-secondary);
}
.block-menu__blocks {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 5px;
}
.block-menu__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.block-menu__list a {
  transition: all 0.3s ease-in 0s;
}
.block-menu__all {
  color: var(--color-alt);
  display: flex;
  align-items: center;
  gap: 0px;
  margin-top: -5px;
}
.block-menu__all:after {
  content: "";
  mask: var(--icon) center center/contain no-repeat;
  -webkit-mask: var(--icon) center center/contain no-repeat;
  background: var(--color-alt);
  --size: 24px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
  margin-top: -2px;
  transition: all 0.3s ease-in 0s;
}
.offer-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.offer-block.offer-block--two {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.offer-block__column {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  background: var(--bg);
  padding: 20px;
  min-height: 193px;
  display: flex;
  flex-direction: column;
}
.offer-block__info {
  display: flex;
  flex-direction: column;
  gap: 30px;
  color: var(--color-whte);
  position: relative;
  z-index: 3;
  height: 100%;
}
.offer-block__title {
  font-family: var(--font-secondary);
}
.offer-block__text {
  margin-top: auto;
}
.offer-block__decor {
  position: absolute;
  width: 325px;
  height: 299px;
  top: 9px;
  right: 11px;
  z-index: 2;
}
.offer-block__decor img,
.offer-block__decor picture {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.offer-block__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.offer-block__img img,
.offer-block__img picture {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in 0s;
}
.offer-block__socials {
  display: flex;
  gap: 8px;
}
.offer-block__social {
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg);
  border-radius: 8px;
  width: 100%;
}
.offer-block__social:before {
  content: "";
  mask: var(--icon) center center/contain no-repeat;
  -webkit-mask: var(--icon) center center/contain no-repeat;
  background: var(--color-whte);
  --size: 19px;
  width: var(--size);
  height: var(--size);
  flex: 0 0 var(--size);
  transition: all 0.3s ease-in 0s;
}
.icon-menu {
  position: relative;
  z-index: 5;
  display: block;
  width: 24px;
  height: 24px;
}
.icon-menu span,
.icon-menu:before,
.icon-menu:after {
  content: "";
  position: absolute;
  right: 0;
  width: 100%;
  height: 2px;
  background-color: var(--color-whte);
  transition: all 0.3s ease-in 0s;
}
.icon-menu:before {
  top: 4px;
}
.icon-menu:after {
  bottom: 4px;
}
.icon-menu span {
  top: calc(50% - 1px);
}
.menu-open .icon-menu span {
  width: 0;
}
.menu-open .icon-menu:before {
  top: calc(50% - 1px);
  transform: rotate(-45deg);
}
.menu-open .icon-menu:after {
  bottom: calc(50% - 1px);
  transform: rotate(45deg);
}
.mobile-header {
  position: relative;
}
.mobile-header__inner,
.mobile-header__list {
  display: flex;
  flex-direction: column;
}
.mobile-header__item:not(:last-child) .mobile-header__link {
  border-bottom: 1px solid rgba(var(--color-blck--rgb), 0.2);
}
.mobile-header__link {
  padding: 16px 0 15px;
  width: 100%;
  font-weight: 550;
}
body:has(header._active):after {
  content: "";
  opacity: 1;
}
body:has(header._active) .icon-menu span,
body:has(header._active) .icon-menu:before,
body:has(header._active) .icon-menu:after {
  content: "";
  background-color: var(--color-primary);
}
@layer component {
  .btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    max-width: max-content;
    padding: 13px;
    border-radius: 16px;
    background: var(--color-alt);
    color: var(--color-whte);
    transition: all 0.3s ease-in 0s;
  }
}
@layer mod {
  .btn--two {
    background: #fff3;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }
  .btn--whte {
    background: var(--color-whte);
    color: var(--color-primary);
  }
  .btn--border {
    background: transparent;
    border: 1px solid var(--color-whte);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }
  .btn--three {
    background: var(--color-success);
  }
}
@layer component {
  .text-30 {
    font-size: 20px;
    line-height: 120%;
  }
  .text-20,
  .text-16 {
    font-size: 14px;
    line-height: 140%;
  }
  .text-18 {
    font-size: 16px;
    line-height: 100%;
  }
}
@media only screen and (min-width: 620px) {
  .block-menu__row.block-menu__row--two .block-menu__column .block-menu__items {
    grid-template-columns: repeat(3, 1fr);
  }
  .block-menu__column.block-menu__column--big .block-menu__items {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  .block-menu__items,
  .block-menu__blocks {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 991.98px) {
  .header {
    top: 1.25vw;
  }
  .header__inner {
    padding: 0.94vw 1.25vw 0px;
    border-radius: 1.04vw;
  }
  .menu__constructor {
    gap: 3.28vw;
  }
  .menu__top {
    padding-bottom: 0.94vw;
  }
  .menu__logo {
    width: 6.96vw;
    height: 2.84vw;
    flex: 0 0 6.96vw;
  }
  .menu__items {
    min-width: 28.49vw;
    gap: 2.08vw;
  }
  .menu__item:after {
    --size: 1.25vw;
    gap: 0.31vw;
  }
  .menu__info {
    gap: 1.56vw;
  }
  .menu__favorites:before {
    --size: 1.25vw;
  }
  .menu__favorites span {
    --size: 0.42vw;
    right: -0.26vw;
  }
  .menu__link {
    padding: 0.52vw 1.25vw;
    border-radius: 2.6vw;
    gap: 0.52vw;
  }
  .menu__link:before {
    --size: 1.25vw;
  }
  .menu__blocks {
    position: relative;
  }
  .block-menu {
    max-height: calc(100dvh - 7.71vw);
  }
  .block-menu__inner {
    grid-template-columns: 1fr 22.86vw;
    padding-top: 1.67vw;
    border-top: 0.05vw solid rgba(var(--color-primary--rgb), 0.2);
    padding-bottom: 1.25vw;
    gap: 1.25vw;
  }
  .block-menu__inner.block-menu__inner--two {
    grid-template-columns: 29.27vw 1fr;
  }
  .block-menu__inner.block-menu__inner--two .block-menu__offer {
    margin-top: auto;
  }
  .block-menu__back {
    display: none;
  }
  .block-menu__content {
    gap: 1.67vw;
  }
  .block-menu__row {
    gap: 1.25vw;
  }
  .block-menu__row {
    grid-template-columns: repeat(2, 1fr);
  }
  .block-menu__row.block-menu__row--two {
    grid-template-columns: 17.71vw 1fr;
  }
  .block-menu__row.block-menu__row--two .block-menu__column .block-menu__items {
    grid-template-columns: repeat(1, 1fr);
  }
  .block-menu__column {
    gap: 1.67vw;
  }
  .block-menu__items {
    gap: 1.25vw;
  }
  .block-menu__items {
    grid-template-columns: repeat(2, 1fr);
  }
  .block-menu__item {
    gap: 0.83vw;
  }
  .block-menu__img {
    --size: 3.33vw;
    border-radius: 0.83vw;
  }
  .block-menu__info {
    padding-top: 1.61vw;
    gap: 1.67vw;
  }
  .block-menu__blocks {
    gap: 24px;
  }
  .block-menu__blocks {
    grid-template-columns: repeat(4, 1fr);
  }
  .block-menu__list {
    gap: 1.25vw;
  }
  .block-menu__all {
    margin-top: -0.26vw;
  }
  .block-menu__all:after {
    --size: 1.25vw;
    margin-top: -0.1vw;
  }
  .offer-block {
    gap: 0.83vw;
  }
  .offer-block__column {
    min-height: 12.86vw;
    padding: 1.56vw;
    border-radius: 1.04vw;
  }
  .offer-block__decor {
    width: 16.93vw;
    height: 15.57vw;
    top: 0.47vw;
    right: 0.57vw;
  }
  .offer-block__socials {
    gap: 0.42vw;
  }
  .offer-block__social {
    padding: 0.52vw;
    border-radius: 0.42vw;
  }
  .offer-block__social:before {
    --size: 0.99vw;
  }
  .icon-menu {
    display: none;
  }
  @layer component {
    .btn {
      padding: 0.83vw;
      border-radius: 0.83vw;
    }
  }
  @layer mod {
    .btn--three {
      background: var(--color-success);
    }
  }
  @layer component {
    .text-30 {
      font-size: 1.56vw;
    }
  }
  @layer component {
    .text-20 {
      font-size: 1.04vw;
      line-height: 130%;
    }
  }
  @layer component {
    .text-16 {
      font-size: 0.83vw;
    }
  }
  @layer component {
    .text-18 {
      font-size: 0.94vw;
    }
  }
}
@media only screen and (max-width: 991.98px) {
  .header._scroll .menu__phone,
  .header.header--two .menu__phone,
  .header._active .menu__phone {
    background: var(--color-primary);
  }
  .header__container {
    padding: 0 5px;
  }
  .menu__items {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0px;
  }
  .menu__item.menu__item--mobile {
    display: none;
  }
  .menu__item {
    padding: 16px 0 15px;
    color: var(--color-primary);
    border-bottom: 1px solid rgba(var(--color-blck--rgb), 0.2);
    width: 100%;
    justify-content: space-between;
    font-size: 18px;
  }
  .menu__item:after {
    content: "";
    background: var(--color-primary);
    transform: rotate(-90deg);
  }
  .menu__phone span {
    display: none;
  }
  .menu__phone {
    --size: 24px;
    width: var(--size);
    height: var(--size);
    flex: 0 0 var(--size);
    mask: var(--icon) center center/contain no-repeat;
    -webkit-mask: var(--icon) center center/contain no-repeat;
    background: var(--color-whte);
    transition: all 0.3s ease-in 0s;
  }
  .menu__link {
    margin-top: 16px;
    font-size: 18px;
    padding: 10px;
  }
  .block-menu {
    position: absolute;
    top: 0;
    background: var(--color-whte);
    width: 100%;
    z-index: 7;
    height: 100%;
  }
  .block-menu__row.block-menu__row--three .block-menu__items {
    grid-template-columns: repeat(4, 1fr);
  }
  .block-menu__item,
  .block-menu__name,
  .block-menu__all {
    font-size: 14px;
  }
  .offer-block__text {
    font-size: 14px;
    line-height: 140%;
  }
  .offer-block__decor {
    width: 228px;
    height: 210px;
    top: -11px;
    right: -8px;
  }
  .mobile-header {
    max-height: calc(100dvh - 148px);
    overflow: auto;
    padding-bottom: 11px;
  }
  .mobile-header::-webkit-scrollbar {
    display: none;
  }
  .mobile-header:has(.block-menu._active) {
    overflow: hidden;
  }
}
@media only screen and (max-width: 991.98px) and (max-width: 991.98px) {
  .mobile-header {
    margin: 0 -14px;
  }
}
@media only screen and (max-width: 991.98px) and (any-hover: hover) {
  .menu__phone:hover {
    background: var(--color-alt);
  }
}
@media only screen and (max-width: 1365.98px) {
  .menu__link {
    max-width: 100%;
    width: 100%;
  }
  .block-menu__back,
  .mobile-header__link {
    font-size: 18px;
  }
}
@media (any-hover: hover) {
  .header._scroll .menu__item:hover {
    color: var(--color-alt);
  }
  .header._scroll .menu__item:hover:after {
    content: "";
    background: var(--color-alt);
  }
  .header._scroll .menu__phone:hover {
    color: var(--color-alt);
  }
  .header._scroll .menu__favorites:hover:before {
    content: "";
    background: var(--color-alt);
  }
  .header._scroll .menu__favorites:hover span {
    background: var(--color-alt-hover);
  }
  .header.header--two .menu__item:hover {
    color: var(--color-alt);
  }
  .header.header--two .menu__item:hover:after {
    content: "";
    background: var(--color-alt);
  }
  .header.header--two .menu__phone:hover {
    color: var(--color-alt);
  }
  .header.header--two .menu__favorites:hover:before {
    content: "";
    background: var(--color-alt);
  }
  .header.header--two .menu__favorites:hover span {
    background: var(--color-alt-hover);
  }
  .menu__item:hover {
    color: var(--color-alt);
  }
  .menu__item:hover:after {
    content: "";
    background: var(--color-alt);
  }
  .menu__phone:hover {
    color: var(--color-alt);
  }
  .menu__favorites:hover:before {
    content: "";
    background: var(--color-alt);
  }
  .menu__favorites:hover span {
    background: var(--color-whte);
  }
  .block-menu__item:hover .block-menu__img img,
  .block-menu__item:hover .block-menu__img picture {
    transform: scale(1.1);
  }
  .block-menu__item:hover .block-menu__name,
  .block-menu__list a:hover,
  .block-menu__all:hover {
    color: var(--color-alt);
  }
  .block-menu__all:hover:after {
    content: "";
    transform: translate(5px);
  }
  .offer-block__column:hover .offer-block__img img,
  .offer-block__column:hover .offer-block__img picture {
    transform: scale(1.1);
  }
  .offer-block__social:hover:before {
    content: "";
    transform: scale(1.1);
  }
  @layer component {
    .btn:hover {
      background: var(--color-alt-hover);
    }
  }
  @layer mod {
    .btn--three:hover {
      background: var(--color-alt);
    }
  }
}
@media (any-hover: none) {
  .icon-menu {
    cursor: default;
  }
}
@media (min-width: 991.98px) {
  ._mac .header,
  ._safari .header {
    width: calc(100% - 6px);
  }
}
@media only screen and (min-width: 991.98px) and (min-width: 991.98px) {
  html:has(.header._active) .header {
    width: calc(100% - 6px);
  }
}
