@font-face {
  font-family: "Montserrat";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Bold.woff") format("woff"), url("../fonts/Montserrat-Bold.woff2") format("woff2"), url("../fonts/Montserrat-Bold.ttf") format("truetype"), url("../fonts/Montserrat-Bold.eot") format("embedded-opentype");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-SemiBold.woff") format("woff"), url("../fonts/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/Montserrat-SemiBold.ttf") format("truetype"), url("../fonts/Montserrat-SemiBold.eot") format("embedded-opentype");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Medium.woff") format("woff"), url("../fonts/Montserrat-Medium.woff2") format("woff2"), url("../fonts/Montserrat-Medium.ttf") format("truetype"), url("../fonts/Montserrat-Medium.eot") format("embedded-opentype");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("../fonts/Montserrat-Regular.woff") format("woff"), url("../fonts/Montserrat-Regular.woff2") format("woff2"), url("../fonts/Montserrat-Regular.ttf") format("truetype"), url("../fonts/Montserrat-Regular.eot") format("embedded-opentype");
}
:root {
  --white: #ffffff;
  --black: #000000;
  --black-main: #151515;
  --bg-overlay: rgba(21, 21, 21, 0.6);

  --blue-main: #2B4EDD;
  --blue-light-text: #719FFF;
  --blue-light: #708CFF;
  --blue-dark: rgba(77, 112, 255, 0.6);
  --blue-darkness: #112471;
  --blue-bg: #BFD4FF;
  --blue-transparent: rgba(17, 36, 113, 0.2);

  --grey-dark: #424242;
  --grey-darkness: #2E2E2E;
  --grey-light: #F3F3F3;
  --grey: #656565;
  --grey-stroke: #E1E1E1;
  --grey-light: #F7F7F7;

  --white-15: rgba(255, 255, 255, 0.15);
  --white-20: rgba(255, 255, 255, 0.2);
  --white-40: rgba(255, 255, 255, 0.4);
  --white-45: rgba(255, 255, 255, 0.45);
  --white-60: rgba(255, 255, 255, 0.6);
  --black-15: rgba(0, 0, 0, 0.15);
  --black-20: rgba(0, 0, 0, 0.2);
  --black-40: rgba(0, 0, 0, 0.4);
  --black-80: rgba(0, 0, 0, 0.8);
  --orange-gradient: linear-gradient(to right, #FF7441 0%, #DC253A 50%, #FF7441 100%);
}
html {
  scrollbar-width: thin;
  scrollbar-color: var(--blue-main) transparent;
}
html::-webkit-scrollbar {
  width: 8px;
  background: var(--blue-main);
  border: 1px solid transparent;
}
html::-webkit-scrollbar-thumb {
  background: transparent;
  border-radius: 8px;
}
html::-webkit-scrollbar-track {
  background: transparent;
}
body {
  font-family: "Montserrat", "Arial", sans-serif;
  font-size: 16px;
  line-height: 26px;
  font-weight: 400;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
  min-height: 100vh;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--black-main);
  background-color: var(--white);
}
img {
  max-width: 100%;
  height: auto;
}
a {
  text-decoration: none;
  cursor: pointer;
}
.visuallyHidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}
*,
*::after,
*::before {
  box-sizing: border-box;
}
ul,
ol {
  padding: 0;
  margin: 0;
}
ul li {
  list-style: none;
}
input,
textarea,
select {
  padding: 0;
  border: none;
  outline: none;
  font-family: "Montserrat", "Arial", sans-serif;
  font-size: 16px;
  line-height: 26px;
}
input::placeholder {
  font-size: 16px;
  line-height: 26px;
  font-weight: 400;
}
button {
  cursor: pointer;
  outline: none;
}
fieldset {
  padding: 0;
  margin: 0;
  border: none;
}
h1,
h2,
h3,
h4,
h5 {
  margin: 0;
}
p {
  padding: 0;
  margin: 0;
}
.button {
  border: none;
  font-family: "Montserrat", "Arial", sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: normal;
  color: var(--white);
  background-color: transparent;
  padding: 0;
  margin: 0;
  border-radius: 100px;
  padding: 16px 30px;
}
.buttonAccent {
  background-color: var(--blue-main);
  transition: background-color 0.3s ease;
}
.buttonAccent:hover {
  background-color: var(--blue-light);
}
.buttonWhite {
  background-color: var(--white);
  color: var(--blue-main);
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}
.buttonWhite:hover {
  background-color: var(--blue-light);
  color: var(--white);
}
.buttonGlass {
  border: 1px solid var(--white-40);
  background-color: var(--white-20);
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}
.buttonGlass:hover {
  background-color: var(--white);
  color: var(--black-main);
}
.buttonBlack {
  background-color: var(--black-main);
  transition: background-color 0.3s ease-out;
}
.buttonBlack:hover {
  background-color: var(--grey-darkness);
}
.wrapper {
  max-width: 1800px;
  margin: 0 auto;
  padding: 0 60px;
}
.header {
    background-color: var(--black-main);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100;
}
.headerContent {
    display: flex;
    align-items: center;
    padding: 14px 0;
}
.headerLogo {
    max-width: 170px;
    width: 100%;
    margin-right: 60px;
}
.logo img {
    width: 100%;
    height: auto;
}
.logo {
    display: flex;
}
.mainNavList {
    display: flex;
    align-items: center;
    gap: 20px;
}
.mainNavLink {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    color: var(--white);
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    transition: color 0.3s ease-out, font-weight 0.2s ease-out;
}
.mainNavLink:hover,
.mainNavLink.active  {
    color: var(--blue-light-text);
}
.mainNavLink svg path {
    fill: var(--white);
    transition: fill 0.3s ease-out;
}
.mainNavLink.active svg path,
.mainNavLink:hover svg path  {
    fill: var(--blue-light-text);
}
.mainNavLink svg {
    transform: rotate(0);
    transition: transform 0.3s ease-out;
}
.mainNavLink.active svg {
    transform: rotate(180deg);
}
.userNav {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: auto;
}
.userNavLinkStock {
    padding: 16px 36px;
    background-color: var(--blue-transparent);
    border: 1px solid var(--blue-main);
    color: var(--blue-light-text);
    transition: background-color 0.3s ease-out, color 0.3s ease-out, border-color 0.3s ease-out;
}
.userNavLinkStock:hover {
    background-color: var(--blue-darkness);
    border: 1px solid var(--blue-darkness);
    color: var(--white);
}
.userNavLinkTestDrive {
    padding: 16px 24px;
}
.headerLanguage {
    margin-right: 16px;
}
.languageForm {
    border-radius: 6px;
    border: 1px solid var(--white-15);
    overflow: hidden;
}
.languageFormList {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}
.languageFormButton {
    padding: 5px 10px;
    text-transform: uppercase;
    color: var(--white-45);
    background-color: transparent;
    font-weight: 400;
    border-radius: 0;
    transition: color 0.3s ease-out;
}
.languageFormButton:hover {
    color: var(--white);
}
.languageFormButton.active {
    font-weight: 500;
    color: var(--white);
    background-color: var(--blue-main);
}
.mainNavItem {
    position: relative;
}
.headerSubNav {
    position: absolute;
    top: 0;
    margin-top: 20px;
    padding-top: 40px;
    left: 0;
    width: 250px;
    opacity: 0;
    transition: opacity 0.3s ease-out;
    pointer-events: none;
    z-index: -1;
}
.headerSubNav.active {
    opacity: 1;
    pointer-events: auto;
    z-index: 99;
    height: 600px;
}
.headerSubNavList {
    border-radius: 8px;
    overflow: hidden;
    background-color: var(--white);
}
.headerSubNavItem {
    padding: 14px;
    background-color: transparent;
    transition: background-color 0.3s ease-out;
}
.headerSubNavItem:hover {
    background-color: var(--blue-bg);
}
.headerSubNavLink {
    display: block;
    width: 100%;
    color: var(--black-main);
    font-weight: 400;
    transition: font-weight 0.3s ease-out;
}
.headerSubNavLink:hover {
    font-weight: 500;
}
.headerSubNavModels {
    width: 1000px;
    display: flex;
    top: 0;
    border-radius: 8px;
    overflow: hidden;
    padding-top: 60px;
}
.headerSubNavModelsList {
    width: 250px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    background-color: var(--white);
}
.headerSubNavModelsItem {
    padding: 12px 24px;
}
.headerSubNavModelsContent {
    width: calc(100% - 250px);
    position: relative;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    overflow: hidden;
}
.headerSubNavModelsContentItem {
    position: absolute;
    top: 0;
    padding: 20px 24px 24px 20px;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    pointer-events: none;
    transition: opacity 0.3s ease-out;
}
.headerSubNavModelsContentItem.show {
    opacity: 1;
    position: relative;
    z-index: 1;
}
.headerSubNavModelsContentItem.active { 
    opacity: 1;
    pointer-events: auto;
    position: relative;
}
.headerSubNavModelsType {
    font-weight: 600;
    color: var(--grey);
    display: inline-block;
}
.headerSubNavModelsLink {
  display: inline-block;
    width: 100%;
    color: var(--black-main);
    font-weight: 400;
    transition: color 0.3s ease-out, font-weight 0.2s ease-out;
}
.headerSubNavModelsLink:hover,
.headerSubNavModelsLink.active {
    color: var(--blue-main);
    font-weight: 600;
}
.headerSubNavModelsItem.show .headerSubNavModelsLink {
    color: var(--blue-main);
    font-weight: 600;
}
.headerSubNavModelsContentItemHeader {
    font-size: 17px;
    line-height: normal;
    font-weight: 600;
    color: var(--white);
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-transform: uppercase;
}
.headerSubNavModelsContentItemHeader span {
    font-size: 30px;
}
.headerSubNavModelsContentItemChars {
  margin-top: auto;
  display: flex;
  margin-bottom: 12px;
}
.headerSubNavModelsContentItemChar {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-right: 26px;
  max-width: 116px;
  width: 100%;
  border-right: 1px solid var(--white-40);
}
.headerSubNavModelsContentItemChar:last-child {
  border-right: none;
  margin-right: 0;
}
.headerSubNavModelsContentItemCharValue {
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
}
.headerSubNavModelsContentItemCharName {
  font-size: 12px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
}
.headerSubNavModelsContentItemLink {
  position: absolute;
  right: 24px;
  bottom: 24px;
}
.headerSubNavModelsContentItemPrice {
  font-size: 22px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
}
.main {
  margin-top: 83px;
}
.titleSection {
  font-size: 36px;
  line-height: 40px;
  font-weight: 600;
  color: var(--black-main);
}
.homeModels {
  margin-bottom: 80px;
  padding-top: 40px;
}
.homeModelsList {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 30px;
  margin-top: 48px;
}
.homeModelsItem {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  width: calc(33.33% - 20px);
}
.homeModelsItemImage {
  display: flex;
  position: relative;
}
.homeModelsItemImage::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.6;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.13) 34%, rgba(0, 0, 0, 0) 63%, rgba(0, 0, 0, 1) 100%);
}
.homeModelsItemImage img {
  width: 100%;
  height: auto;
}
.homeModelsItem:first-child,
.homeModelsItem:nth-child(2) {
  width: calc(50% - 15px);
}
.homeModelsItemContent {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 20px;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: flex-start;
}
.homeModelsItemContent::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-color: rgba(21, 21, 21, 0.6);
  backdrop-filter: blur(4px);
  opacity: 0;
  transition: opacity 0.3s ease-out;
}
.homeModelsTitle {
  text-align: center;
}
.homeModelsSubtitle {
  text-align: center;
  font-size: 20px;
  line-height: normal;
  display: block;
  margin-bottom: 4px;
}
.homeModelsItemButtons {
  margin-top: auto;
  display: flex;
  width: 100%;
  gap: 29px;
  padding: 8px 0;
  opacity: 0;
  position: relative;
  z-index: 3;
  transition: opacity 0.3s ease-out;
}
.homeModelsItem:first-child .homeModelsItemButtons,
.homeModelsItem:nth-child(2) .homeModelsItemButtons {
  padding: 8px 34px;
}
.homeModelsItemHeader {
  width: 60%;
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.homeModelsItemHeader span {
  font-size: 26px;
}
.homeModelsItemPrice {
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
  padding: 12px 20px;
  background-color: var(--black-40);
  border-radius: 100px;
  margin-left: auto;
}
.homeModelsItemLink {
  width: calc(50% - 15px);
  text-align: center;
}
.homeModelsItem:hover .homeModelsItemContent::before {
  opacity: 1;
}
.homeModelsItem:hover .homeModelsItemButtons {
  opacity: 1;
}
.mainBanner,
.mainBannerInner {
  overflow: hidden;
  position: relative;
  height: calc(100vh - 85px);
}
.mainBannerInner.mainBannerProduct {
  height: 600px;
}
.mainBannerItem {
  position: relative;
  height: 100%;
}
.productPage .mainBannerItem {
  height: 600px;
}
.mainBannerImage {
  display: flex;
}
.mainBannerImage {
  display: flex;
  width: 100%;
  height: 100%;
}
.mainBannerImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mainBannerContent {
  width: 100%;
  position: absolute;
  top: 180px;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 60px;
  margin: 0 auto;
}
.mainBannerContentInverted {
  color: var(--white);
}
.productPage .mainBannerContent {
  top: 80px;
}
.mainBannerContentButtons {
  display: flex;
  gap: 24px;
  margin-top: 46px;
}
.mainBannerNavButton {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mainBannerNavButtonPrev {
  left: 0;
}
.mainBannerNavButtonNext {
  right: 0;
}
.mainBannerNavButton svg path {
  stroke: var(--black-main);
  transition: stroke 0.3s ease-out;
}
.mainBannerNavButton:hover svg path {
  stroke: var(--blue-main);
}
.mainBannerContentTitle {
  font-size: 58px;
  line-height: 74px;
  font-weight: 600;
  text-transform: uppercase;
}
.mainBannerContentSubtitle {
  font-size: 30px;
  line-height: normal;
  font-weight: 600;
  text-transform: uppercase;
}
.mainBannerContentPrice {
  position: absolute;
  bottom: 50%;
  left: 60%;
  transform: translate(-50%, 50%);
  padding: 14px 40px;
  background-color: var(--white-60);
  border-radius: 100px 20px 0 100px;
  font-size: 26px;
  line-height: 40px;
  font-weight: 600;
}
.mainBannerStickers {
  position: absolute;
  bottom: 28px;
  right: 28px;
  z-index: 2;
}
.mainBannerStickersList {
  padding: 5px;
  border-radius: 10px;
  background-color: var(--black-20);
  backdrop-filter: blur(6px);
  display: flex;
  gap: 10px;
  flex-direction: column;
  align-items: flex-end;
  min-width: 60px;
  max-width: 60px;
  will-change: max-width;
  transition: max-width 0.3s ease-out;
}
.mainBannerStickersList:hover {
  max-width: 260px;
}
.mainBannerStickersLink {
  display: flex;
  align-items: center;
  gap: 13px;
}
.mainBannerStickersIcon {
  width: 50px;
  height: 50px;
  border-radius: 10px;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: background-color 0.3s ease-out;
}
.mainBannerStickersLink:hover .mainBannerStickersIcon {
  background-color: var(--blue-main);
}
.mainBannerStickersName {
  color: var(--white);
  font-size: 0;
  opacity: 0;
  padding-left: 0;
  overflow: hidden;
  white-space: nowrap;
  display: inline-block;
  transition: font-size 0.3s ease-out, opacity 0.3s ease-out, color 0.3s ease-out;
}
.mainBannerStickersLink:hover .mainBannerStickersName {
  color: var(--blue-light-text);
}
.mainBannerStickersList:hover .mainBannerStickersName {
  font-size: 16px;
  opacity: 1;
  padding-left: 10px;
}
.fullBannerBuy {
  background-image: url('../images/bg/buyBanner.webp');
  background-repeat: no-repeat;
  background-size: cover;
}
.fullBannerContent {
  padding: 174px 0;
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
}
.fullBannerTitle {
  font-size: 60px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 18px;
}
.fullBannerText {
  font-size: 30px;
  line-height: 40px;
  color: var(--white);
  margin-bottom: 46px;
}
.news {
  margin: 80px 0;
}
.newsTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 50px;
}
.newsLink {
  padding: 16px 24px;
  border-radius: 100px;
  background-color: var(--black-main);
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--white);
  font-size: 18px;
  font-weight: 600;
  transition: background-color 0.3s ease-out;
}
.newsLink:hover {
  background-color: var(--grey-dark);
}
.newsList {
  display: flex;
  gap: 30px;
}
.newsItem {
  width: calc(33.33% - 20px);
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  border: 1px solid var(--grey-stroke);
}
.newsItem:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  background-color: var(--black-main);
  transition: opacity 0.3s ease-out;
}
.newsItem:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(6px);
  opacity: 0;
  transition: opacity 0.3s ease-out;
}
.newsItemImage {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
}
.newsItemImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.newsItemDate {
  position: absolute;
  bottom: 20px;
  right: 20px;
  padding: 10px 14px;
  background-color: var(--black-80);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  line-height: normal;
  color: var(--white);
}
.newsItemDesc {
  font-size: 14px;
  line-height: 22px;
  padding: 20px 18px 0 18px;
  margin-bottom: 20px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.newsItemLink {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 30px;
  background-color: var(--blue-light-text);
  color: var(--white);
  text-align: center;
  font-weight: 600;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  opacity: 0;
  transition: opacity 0.3s ease-out;
  z-index: -1;
}
.newsItem:hover::before {
  opacity: 0.6;
}
.newsItem:hover:after {
  opacity: 1;
}
.newsItem:hover {
  backdrop-filter: blur(6px);
}
.newsItem:hover .newsItemLink {
  opacity: 1;
  z-index: 1;
}
.homeForm {
  background-image: url('../images/bg/form-bg.webp');
  background-repeat: no-repeat;
  background-size: cover;
}
.homeForm.homeFormTestDrive .homeFormContent {
  height: 60vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.homeFormContent {
  padding: 80px 0;
  max-width: 885px;
  margin: 0 auto;
}
.homeFormTitle {
  font-size: 36px;
  line-height: normal;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 18px;
  text-align: center;
}
.homeFormDesc {
  color: var(--white);
  text-align: center;
  margin-bottom: 35px;
}
.form {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 32px;
  width: 100%;
}
.formField {
  width: calc(50% - 16px);
  position: relative;
}
.formField .control__error {
  position: absolute;
  top: 4px;
  left: 17px;
  font-size: 12px;
  line-height: normal;
  color: red;
}
.formFieldAgree {
  margin: 3px 0 5px;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 11px;
}
.formFieldAgree label {
  cursor: pointer;
  padding-left: 36px;
  position: relative;
  display: block;
  color: var(--white);
}
.formFieldAgree label a {
  font-weight: 600;
  color: var(--white);
  text-decoration: underline;
}
.formFieldAgree input {
  display: none;
}
.formFieldAgree label::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  background: url(../images/icons/checkbox.svg) no-repeat center center;
  background-size: cover;
  opacity: 1;
  transition: opacity 0.3s ease;
}
.formFieldAgree label::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  background: url(../images/icons/checkbox-marker.svg) no-repeat center center;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.formFieldAgree input:checked + label::after {
  opacity: 1;
}
.formFieldAgree input:checked + label::before {
  opacity: 0;
}
.formInput,
.formSelect {
  width: 100%;
  padding: 17px;
  border-radius: 8px;
  background-color: var(--white);
  color: var(--black-main);
  border: 1px solid var(--grey-stroke);
  transition: border-color 0.3s ease-out;
}
.homeFormButton {
  padding: 16px 107px;
}
.formSelect {
  color: var(--grey);
  padding: 21px 20px;
}
.footer {
  background-color: var(--black-main);
}
.footerNavContent {
  padding: 60px 0;
  display: flex;
  gap: 20px;
}
.footerNavContentItem {
  max-width: calc(25% - 16px);
  width: 100%;
  display: flex;
  flex-direction: column;
}
.copyright {
  background-color: #303030;
  padding: 23px;
}
.copyrightText {
  text-align: center;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 20px;
  color: #A1A1A1;
}
.footerNavContentTitle {
  font-size: 18px;
  font-weight: 600;
  color: #F2F2F2;
  margin-bottom: 16px;
}
.footerNavItem {
  margin-bottom: 16px;
}
.footerNavAddressItem {
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 18px;
}
.footerNavLink,
.footerNavText {
  color: var(--white);
  transition: color 0.3s ease-out;
}
.footerNavText {
  text-align: right;
  display: block;
  width: calc(100% - 56px);
}
.footerNavLink:hover {
  color: var(--blue-light-text);
}
.socials {
  margin-top: auto;
  display: flex;
  gap: 20px;
  justify-content: flex-end;
}
.socialsLink {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: var(--blue-main);
  transition: background-color 0.3s ease-out;
}
.socialsLink:hover {
  background-color: var(--blue-light-text);
}
.features {
  margin: 80px 0;
}
.featuresTitle {
  text-align: center;
  margin-bottom: 48px;
}
.featuresList {
  display: flex;
  gap: 30px;
}
.featuresItem {
  width: calc(33.33% - 16px);
  border: 1px solid var(--grey-stroke);
  border-radius: 20px;
  background-color: #FBFBFB;
  display: flex;
  flex-direction: column;
}
.featuresItemContent {
  display: flex;
  flex-direction: column;
  padding: 34px 40px 0 26px;
  margin-bottom: auto;
}
.featuresItemTitle {
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
  margin: 20px 0 8px;
}
.featuresItemLink {
  display: block;
  width: 100%;
  margin-top: 34px;
  padding: 16px;
  background-color: var(--black-main);
  color: var(--white);
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  font-weight: 600;
  text-align: center;
  transition: background-color 0.3s ease-out;
}
.featuresItemLink:hover {
  background-color: var(--grey-dark);
}
.homeAboutTitle {
  text-align: center;
  margin-bottom: 48px;
}
.homeAboutItem {
  display: flex;
  gap: 20px;
  border-radius: 22px;
  border: 1px solid var(--grey-stroke);
  margin-bottom: 30px;
}
.homeAboutItem:last-child {
  margin-bottom: 0;
}
.homeAboutItemImage {
  display: flex;
  overflow: hidden;
  width: 50%;
}
.homeAboutItemImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.homeAboutItem:nth-child(even) .homeAboutItemImage {
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}
.homeAboutItem:nth-child(odd) .homeAboutItemImage {
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
}
.homeAboutItemContent {
  width: calc(50% - 20px);
  padding: 48px 44px;
}
.homeAboutItemText {
  color: var(--grey);
  margin-bottom: 16px;
}
.homeAboutItemText:last-child {
  margin-bottom: 0;
}
.homeModelsAll {
  display: none;
}
.modal {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: var(--bg-overlay);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
}
.modal.active {
  opacity: 1;
  pointer-events: auto;
}
.modalContent {
  background-color: var(--white);
  border-radius: 20px;
  position: relative;
  padding: 66px;
}
.modalClose {
  position: absolute;
  top: 26px;
  right: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.modalContent .modalClose svg {
  margin-bottom: 0;
}
.modalSuccessContent {
  text-align: center;
}
.modalSuccessContent svg {
  margin-bottom: 40px;
}
.modalTitle {
  font-size: 36px;
  line-height: normal;
  font-weight: 600;
  text-align: center;
  margin-bottom: 18px;
}
.modalSuccessTitle {
  font-size: 30px;
  line-height: normal;
  font-weight: 600;
  text-align: center;
}
.modalSubtitle {
  text-align: center;
  margin-bottom: 35px;
}
.modalClose:hover svg path {
  stroke: var(--blue-main);
  transition: stroke 0.3s ease;
}
.modalClose svg path {
  stroke: #D6D6D6;
}
.offerForm {
  max-width: 885px;
  width: 100%;
  margin: 0 auto;
}
.offerForm .formFieldAgree label,
.offerForm .formFieldAgree label a {
  color: var(--black-main);
}
.offerForm .formInput,
.offerForm .formSelect {
  background-color: #FBFBFB;
}
.offerForm .formFieldAgree label:before {
  background: url(../images/icons/checkbox-black.svg) no-repeat center center;
}
.offerForm .formFieldAgree label:after {
  background: url(../images/icons/checkbox-black-marker.svg) no-repeat center center;
}
.formSubmit {
  margin-top: 20px;
}
.burgerButton {
  display: none;
  padding: 0;
}
.mobileMenu {
  display: none;
}
@media (max-width: 1200px) {
  .headerLogo {
    max-width: 100px;
    margin-right: 30px;
  }
  .userNavLink {
    padding: 16px 20px;
  }
  .userNav {
    gap: 8px;
  }
  .homeAboutItem {
    gap: 26px;
    border-radius: 24px;
    flex-direction: column;
  }
  .homeAboutItem:nth-child(odd) {
    flex-direction: column-reverse;
  }
  .homeAboutItemImage {
    width: 100%;
  }
  .homeAboutItem:nth-child(even) .homeAboutItemImage {
    border-top-right-radius: 0;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
  }
  .homeAboutItem:nth-child(odd) .homeAboutItemImage {
    border-top-left-radius: 0;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
  }
  .homeAboutItemContent {
    width: 100%;
    padding: 28px 26px 0 26px;
  }
  .homeAboutItemText {
    margin-bottom: 6px;
  }
}
@media (max-width: 1000px) {
  .homeForm.homeFormTestDrive .homeFormContent {
    height: auto;
  }
  .headerLogo {
    max-width: 170px;
  }
  .userNavLink {
    padding: 13px 24px;
  }
  .userNav {
    gap: 28px;
  }
  .mainNav {
    display: none;
  }
  .burgerButton {
    width: 32px;
    height: 32px;
    display: flex;
    position: relative;
    margin-left: 14px;
  }
  .burgerButtonLine {
    width: 26px;
    height: 2px;
    background-color: var(--white);
    border-radius: 2px;
    position: absolute;
    top: 5px;
    right: 50%;
    transform: translateX(50%) rotate(0);
    transition: transform 0.3s ease-out 0.1s;
  }
  .burgerButtonLine:before {
    content: '';
    width: 15px;
    height: 2px;
    background-color: var(--white);
    border-radius: 2px;
    position: absolute;
    top: 7px;
    right: 0;
    opacity: 1;
    transition: opacity 0.1s ease-out;
  }
  .burgerButtonLineBottom {
    top: unset;
    bottom: 11px;
  }
  .burgerButton.active .burgerButtonLine:before {
    opacity: 0;
  }
  .burgerButton.active .burgerButtonLine {
    transform: translateX(50%) rotate(45deg);
    top: 50%;
  }
  .burgerButton.active .burgerButtonLineBottom {
    transform: translateX(50%) rotate(-45deg);
  }
  .mobileMenu {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background-color: var(--bg-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: -1;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease-out;
  }
  .mobileMenu.active {
    opacity: 1;
    z-index: 99;
    pointer-events: auto;
  }
  .mobileMenu .mainNav {
    position: absolute;
    top: 102px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 40px);
    max-height: 90%;
    background-color: var(--white);
    border-radius: 16px;
    display: block;
    overflow-y: auto;
    scrollbar-width: none;
  }
  .mainNavList {
    flex-direction: column;
    align-items: center;
    gap: 0;
    overflow: hidden;
  }
  .mobileMenu .mainNav::-webkit-scrollbar {
    display: none;               
  }
  .mainNavItem {
    padding: 26px;
  }
  .mainNavLink svg path {
    fill: var(--black-main);
  }
  .mainNavLink {
    width: 100%;
    justify-content: center;
    color: var(--black-main);
  }
  .mainNavItemStock,
  .mainNavItemTestDrive {
    display: none;
  }
  .headerSubNav {
    position: static;
    margin-top: 0;
    padding-top: 0;
    width: 100%;
    flex-direction: column;
    max-height: 0;
    height: 100%;
    transition: max-height 0.3s ease-out;
  }
  .headerSubNav.active {
    max-height: 1000px;
    padding-top: 8px;
    height: auto;
  }
  .headerSubNavItem {
    width: 100%;
    text-align: center;
  }
  .headerSubNavItem:hover {
    background-color: transparent;
  }
  .mainNavItemModels {
    padding: 0;
    width: 100%;
  }
  .mainNavItemModels .mainNavLink {
    padding: 26px;
  }
  .headerSubNavModelsList {
    width: 100%;
    columns: 2;
    height: auto;
    margin-bottom: 30px;
  }
  .headerSubNavModelsItem {
    padding: 18px 24px;
  }
  .headerSubNavModelsContent {
    width: 100%;
    border-radius: 0;
    height: 650px;
  }
  .headerSubNavModelsContentItem {
    padding: 17px 19px;
  }
  .main {
    margin-top: 75px;
  }
  .mainBanner,
  .mainBannerInner {
    height: calc(100vh - 75px);
  }
  .modelPage .mainBannerItem {
    height: calc(100vh - 75px);
  }
  .mainBannerContent {
    top: 80px;
    padding: 0 20px;
  }
  .wrapper {
    padding: 0 20px;
  }
  .mainBannerContentTitle {
    margin-bottom: 16px;
    font-size: 48px;
  }
  .mainBannerContentSubtitle {
    font-size: 26px;
  }
  .mainBannerContentButtons {
    gap: 28px;
    margin-top: 38px;
  }
  .mainBannerContentPrice {
    bottom: -66px;
    transform: translate(-50%, 100%);
  }
  .mainBannerNavButton {
    background-color: var(--bg-overlay);
    border-radius: 50%;
    top: calc(100% - 55px);
    width: 50px;
    height: 50px;
  }
  .mainBannerNavButton svg path {
    stroke: var(--white)
  }
  .mainBannerNavButtonPrev {
    left: calc(50% - 65px);
  }
  .mainBannerNavButtonNext {
    right: calc(50% - 65px);
  }
  .homeModels {
    margin-bottom: 40px;
  }
  .titleSection {
    font-size: 28px;
    line-height: 36px;
  }
  .homeModelsSubtitle {
    margin-bottom: 12px;
  }
  .homeModelsList {
    margin-top: 40px;
    gap: 20px;
  }
  .homeModelsItem {
    width: calc(50% - 10px);
  }
  .homeModelsItem:first-child, .homeModelsItem:nth-child(2) {
    width: calc(50% - 10px); 
  }
  .homeModelsItemHeader {
    font-size: 18px;
    gap: 2px;
  }
  .homeModelsItemHeader span {
    font-size: 24px;
  }
  .homeModelsItemPrice {
    font-size: 14px;
    padding: 10px 18px;
  }
  .fullBannerContent {
    padding: 106px 0;
    max-width: 550px;
  }
  .fullBannerTitle {
    font-size: 28px;
    line-height: 36px;
  }
  .fullBannerText {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 37px;
  }
  .features {
    margin: 40px 0;
  }
  .featuresTitle {
    margin-bottom: 30px;
  }
  .featuresList {
    flex-direction: column;
  }
  .featuresItem {
    width: 100%;
  }
  .featuresItemContent {
    padding: 34px 32px 0 32px;
  }
  .featuresItemLink:hover {
    background-color: var(--grey-dark);
  }
  .button {
    font-size: 16px;
  }
  .news {
    margin: 40px 0;
  }
  .newsTop {
    margin-bottom: 30px;
  }
  .newsLink {
    font-size: 16px;
  }
  .newsList {
    gap: 20px;
  }
  .newsItemDate {
    bottom: 12px;
    right: 12px;
    padding: 8px 10px;
    border-radius: 20px;
  }
  .newsItemDesc {
    padding: 12px 11px 0 12px;
    margin-bottom: 12px;
  }
  .newsItemLink {
    padding: 20px;
  }
  .newsItem {
    display: none;
    width: calc(50% - 10px);
  }
  .newsItem:nth-child(1),
  .newsItem:nth-child(2) {
    display: block;
  }
  .homeFormContent {
    padding: 60px 0;
    max-width: 100%;
  }
  .homeFormTitle {
    font-size: 28px;
    line-height: 36px;
    margin-bottom: 15px;
  }
  .homeFormDesc {
    margin-bottom: 30px;
  }
  .form {
    gap: 20px;
  }
  .formField {
    width: calc(50% - 10px);
  }
  .formFieldAgree {
    width: 100%;
  }
  .footerNavContent {
    padding: 26px 20px;
    flex-wrap: wrap;
    gap: 40px 20px;
  }
  .footerNavContentItem {
    max-width: calc(50% - 20px);
  }
  .copyright {
    padding: 13px;
  }
  .copyrightText {
    text-align: center;
    text-transform: uppercase;
    font-size: 12px;
    line-height: 20px;
    color: #A1A1A1;
  }
  .footerNavContentTitle {
    margin-bottom: 10px;
  }
  .footerNavItem {
    margin-bottom: 8px;
  }
  .footerNavAddressItem {
    margin-bottom: 10px;
    justify-content: flex-start;
    flex-direction: row-reverse;
    gap: 10px;
  }
  .footerNavText,
  .footerNavLink {
    text-align: left;
    width: calc(100% - 56px);
  }
  .socials {
    margin-top: 24px;
    gap: 16px;
    justify-content: flex-start;
  }
  .socialsLink {
    width: 32px;
    height: 32px;
  }
  .socialsLink svg {
    height: 18px;
  }
  .mainNavItem {
    width: 100%;
    border-bottom: 1px solid var(--grey-stroke);
  }
  .offerForm {
    max-width: 680px;
  }
  .modalContent {
    padding: 40px;
    width: calc(100% - 40px);
  }
}
@media (max-width: 700px) {
  .wrapper {
    padding: 0 16px;
  }
  .headerLogo {
    max-width: 66px;
  }
  .userNavLink {
    display: none;
  }
  .languageFormButton {
    font-size: 14px;
  }
  .burgerButton {
    margin-left: 18px;
  }
  .headerLanguage {
    margin-right: 0;
  } 
  .main {
    margin-top: 60px;
  }
  .mainBanner,
  .mainBannerInner {
    height: calc(100vh - 60px);
  }
  .modelPage .mainBannerItem {
    height: calc(100vh - 60px);
  }
  .mainBannerStickers {
    display: none;
  }
  .mainBannerContentTitle {
    font-size: 40px;
    line-height: 40px;
  }
  .mainBannerContentSubtitle {
    font-size: 18px;
  }
  .mainBannerContentButtons {
    gap: 12px;
    margin-top: 26px;
  }
  .mainBannerContentPrice {
    font-size: 14px;
    padding: 10px 16px;
    line-height: normal;
    bottom: -45px;
    left: 16px;
    transform: translate(0, 100%);
  }
  .homeModels {
    margin-bottom: 40px;
  }
  .titleSection {
    font-size: 22px;
  }
  .homeModelsSubtitle {
    margin-bottom: 8px;
    font-size: 16px;
  }
  .homeModelsList {
    margin-top: 20px;
  }
  .homeModelsItem {
    width: 100%;
  }
  .homeModelsItem:first-child, .homeModelsItem:nth-child(2) {
    width: 100%;
  }
  .homeModelsItem:nth-child(n + 4) {
    display: none;
  }
  .homeModelsItemHeader {
    font-size: 16px;
  }
  .homeModelsItemHeader span {
    font-size: 16px;
  }
  .homeModelsItemPrice {
    font-size: 12px;
    padding: 10px 14px;
  }
  .homeModelsItemContent::before {
    display: none;
  }
  .homeModelsItemButtons {
    gap: 14px;
    opacity: 1;
  }
  .homeModelsItem:first-child .homeModelsItemButtons, .homeModelsItem:nth-child(2) .homeModelsItemButtons {
    padding: 0;
  }
  .homeModelsItemLink {
    padding: 10px;
    width: calc(50% - 7px);
  }
  .homeModelsAll {
    display: flex;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: 20px;
  }
  .fullBannerContent {
    padding: 50px 0;
    max-width: 100%;
  }
  .fullBannerTitle {
    font-size: 22px;
  }
  .fullBannerText {
    font-size: 16px;
    line-height: normal;
    margin-bottom: 20px;
  }
  .features {
    margin: 32px 0;
  }
  .featuresList {
    gap: 20px;
  }
  .featuresTitle {
    margin-bottom: 20px;
  }
  .featuresItemContent {
    padding: 22px 22px 0 22px;
    align-items: center;
  }
  .featuresItemTitle {
    font-size: 18px;
    margin: 14px 0 8px;
  }
  .featuresItemText {
    font-size: 12px;
    text-align: center;
    line-height: 20px;
  }
  .featuresItemLink {
    margin-top: 22px;
    padding: 16px;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
  }
  .homeAboutTitle {
    margin-bottom: 20px;
  }
  .homeAboutItem {
    gap: 14px;
    margin-bottom: 20px;
  }
  .homeAboutItemContent {
    padding: 14px 14px 0 14px;
  }
  .homeAboutItemText {
    margin-bottom: 8px;
    font-size: 12px;
    line-height: 20px;
  }
  .news {
    margin: 32px 0;
  }
  .newsTop {
    margin-bottom: 20px;
  }
  .newsLink {
    font-size: 16px;
    padding: 10px 20px;
  }
  .newsList {
    gap: 20px;
    flex-direction: column;
  }
  .newsItemDate {
    padding: 8px;
  }
  .newsItemDesc {
    padding: 11px 10px 0 10px;
    margin-bottom: 11px;
  }
  .newsItem {
    display: none;
    width: 100%;
  }
  .newsItem:nth-child(1),
  .newsItem:nth-child(2),
  .newsItem:nth-child(3) {
    display: block;
  }
  .homeFormContent {
    padding: 37px 0;
  }
  .homeFormTitle {
    font-size: 22px;
    margin-bottom: 8px;
  }
  .homeFormDesc {
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 22px;
  }
  .form {
    gap: 12px;
  }
  .formField {
    width: 100%;
  }
  .formFieldAgree label {
    font-size: 12px;
    line-height: 18px;
  }
  .formFieldAgree label a {
    font-size: 12px;
    line-height: 18px;
  }
  .homeFormButton {
    padding: 14px;
    width: 100%;
  }
  .footerNavContent {
    padding: 30px 0;
    gap: 20px;
  }
  .footerNavContentItem {
    max-width: calc(50% - 10px);
  }
  .footerNavContentItem:last-child,
  .footerNavContentItem:first-child {
    max-width: 100%;
  }
  .footerNavContentItem:first-child .footerNavList {
    columns: 2;
  }
  .copyright {
    padding: 10px;
  }
  .socials {
    margin-top: 14px;
    justify-content: flex-end;
  }
  .socialsLink {
    width: 26px;
    height: 26px;
  }
  .mainNavItemStock,
  .mainNavItemTestDrive {
    display: block;
    padding: 12px 16px 0 12px;
    border-bottom: none;
  }
  .mainNavItemStock .mainNavLink {
    padding: 14px;
    border: 1px solid var(--black-main);
    border-radius: 100px;
    font-size: 14px;
    line-height: normal;
    font-weight: 600;
    width: 100%;
  }
  .mainNavItemTestDrive .mainNavLink {
    padding: 14px;
    border: 1px solid var(--blue-main);
    border-radius: 100px;
    font-size: 14px;
    line-height: normal;
    color: var(--blue-main);
    font-weight: 600;
    width: 100%;
  }
  .headerSubNavModelsItem {
    padding: 12px 16px;
  }
  .headerSubNavModelsType {
    font-size: 14px;
    line-height: normal;
  }
  .mobileMenu .mainNav {
    top: 60px;
    width: 100%;
    border-radius: 0;
    height: calc(100% - 60px);
    max-height: 100%;
  }
  .headerSubNavModelsContent {
    height: 500px;
  }
  .headerSubNavModelsContentItemHeader {
    font-size: 14px;
    gap: 2px;
  }
  .headerSubNavModelsContentItemHeader span {
    font-size: 26px;
  }
  .headerSubNavModelsContentItemChar {
    margin-right: 8px;
  }
  .headerSubNavModelsContentItemCharValue {
    font-size: 14px;
  }
  .headerSubNavModelsContentItemCharName {
    font-size: 10px;
    line-height: 14px;
  }
  .headerSubNavModelsContentItemPrice {
    font-size: 14px;
    margin-top: 4px;
    padding: 14px 0;
  }
  .headerSubNavModelsContentItemLink {
    padding: 14px;
    right: 16px;
    bottom: 20px;
  }
  .offerForm {
    max-width: 100%;
  }
  .modalContent {
    padding: 20px 14px;
    width: calc(100% - 32px);
  }
  .modalTitle {
    font-size: 18px;
    margin-bottom: 10px;
  }
  .modalSubtitle {
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 20px;
  }
  input,
  textarea,
  select {
    font-size: 12px;
    line-height: 20px;
  }
  input::placeholder {
    font-size: 12px;
    line-height: 20px;
  }
  .formInput,
  .formSelect {
    padding: 14px;
  }
  .formSubmit {
    margin-top: 10px;
  }
  .modalClose {
    width: 14px;
    height: 14px;
    top: 12px;
    right: 12px;
  }
  .modalClose svg {
    width: 14px;
  }
  .modalSuccessContent svg {
    margin-bottom: 18px;
    width: 52px;
    height: 52px;
  }
}
.pageHero {
  position: relative;
}
.pageHeroImage {
  display: flex;
  overflow: hidden;
  width: 100%;
}
.pageHeroImage img {
  width: 100%;
}
.pageHeroContent {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 120px 28px 34px;
  margin: 0 auto;
}
.pageHeroTitle {
  text-align: center;
  font-size: 58px;
  line-height: 74px;
  font-weight: 600;
}
.pageHeroTitleStyle {
  text-align: left;
}
.pageHeroTitleWhite {
  text-align: left;
  color: var(--white);
}
.modelsPageList {
  padding: 40px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.modelsPageItem {
  width: calc(25% - 23px);
  border-radius: 12px;
  background-color: var(--white);
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 438px;
  transition: box-shadow 0.3s ease-out;
}
.modelsPageItem:hover {
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.25);
}
.modelsPageItemContent {
  padding: 35px 22px 0;
}
.modelsPageItemLink {
  margin-top: auto;
  padding: 16px;
  background-color: var(--blue-light-text);
  color: var(--white);
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  transition: background-color 0.3s ease-out;
  height: 54px;
}
.modelsPageItemLink:hover {
  background-color: var(--blue-light);
}
.modelsPageItemImage {
  display: flex;
  position: relative;
  height: 194px;
  width: 100%;
  overflow: hidden;
  margin-bottom: 20px;
}
.modelsPageItemImage img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.9s ease-out;
}
.modelsPageItemImageFirst {
  transform: translateX(0);
}
.modelsPageItemImageSecond {
  position: absolute;
  top: 0;
  right: -100%;
  transform: translateX(30%);
}
.modelsPageItem:hover .modelsPageItemImageFirst {
  transform: translateX(-100%);
}
.modelsPageItem:hover .modelsPageItemImageSecond {
  transform: translateX(-100%);
}
.modelsPageItemTitle {
  font-size: 18px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 4px;
  text-align: center;
}
.modelsPageItemChars {
  display: flex;
  gap: 40px;
  justify-content: center;
  align-items: center;
  margin-bottom: 28px;
}
.modelsPageItemCharsItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
.modelsPageItemCharsItem span {
  font-size: 14px;
  line-height: normal;
  color: #787878;
}
.modelsPageItemPrice {
  display: block;
  padding: 10px;
  background-color: var(--grey-light);
  font-size: 14px;
  line-height: normal;
  font-weight: 600;
  margin-top: auto;
  text-align: center;
}
@media (max-width: 1600px) {
  .modelsPageItemChars {
    gap: 16px;
  }
}
@media (max-width: 1300px) {
  .modelsPageItemChars {
    gap: 8px;
  }
  .modelsPageItemContent {
    padding: 35px 16px 0; 
  }
}
@media (max-width: 1200px) {
  .modelsPageItem {
    width: calc(33.33% - 20px);
  }
  .pageHeroContent {
    padding: 80px 28px 34px;
  }
}
@media (max-width: 1000px) {
  .modelsPageItem {
    width: calc(50% - 15px);
    height: 395px;
  }
  .modelsPageItemContent {
    padding: 26px 18px 0; 
  }
  .modelsPageItemImage {
    height: 160px;
  }
  .modelsPageItemChars {
    gap: 20px;
  }
  .pageHero {
    height: 800px;
  }
  .pageHeroImage {
    height: inherit;
  }
  .pageHeroImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .pageHeroContent {
    padding: 140px 20px 46px;
  }
}
@media (max-width: 700px) {
  .modelsPageList {
    padding: 20px 0;
  }
  .modelsPageItem {
    width: 100%;
    height: auto;
  }
  .modelsPageItemContent {
    padding: 24px 21px 0; 
  }
  .modelsPageItemImage {
    height: 144px;
  }
  .modelsPageItemChars {
    gap: 20px;
    justify-content: space-between;
    padding: 0 8px;
  }
  .modelsPageItemChars span {
    font-size: 12px;
  }
  .modelsPageItemTitle {
    font-size: 16px;
  }
  .pageHero {
    height: calc(100vh - 60px);
  }
  .pageHeroContent {
    padding: 90px 20px;
  }
  .pageHeroTitle {
    font-size: 30px;
    line-height: 40px;
  }
}
.modelPageNav {
  background-color: var(--grey-light);
  padding: 40px 0;
}
.modelPageList {
  display: flex;
  gap: 30px;
  align-items: center;
  justify-content: center;
}
.modelPageNavItem {
  width: calc(25% - 20px);
}
.modelPageNavLink {
  font-weight: 600;
  text-align: center;
  color: var(--black-main);
  display: block;
  width: 100%;
  padding: 28px;
  background-color: var(--white);
  border-radius: 8px;
  border: 1px solid #C4C4C4;
  transition: border-color 0.3s ease-out, background-color 0.3s ease-out, color 0.3s ease-out;
}
.modelPageNavLink:hover {
  background-color: var(--blue-bg);
  border: 1px solid var(--blue-main);
  color: var(--blue-main);
}
.modelPageTechs {
  padding: 50px 0;
  background-image: url(../images/bg/gradient-bg.webp);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.modelPageTechsTitle {
  text-align: center;
  margin-bottom: 60px;
}
.modelPageTechsList {
  display: flex;
  gap: 20px 30px;
  flex-wrap: wrap;
  justify-content: center;
}
.modelPageTechsItem {
  width: calc(20% - 24px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.modelPageTechsValue {
  font-size: 36px;
  line-height: 40px;
  font-weight: 600;
}
.modelPageTechsName {
  line-height: 26px;
  font-weight: 600;
  color: var(--grey);
}
.colors {
  padding: 80px 38px;
  background-color: var(--white);
}
.colorsTitle {
  text-align: center;
  margin-bottom: 20px;
}
.colorsSubtitle {
  text-align: center;
  margin-bottom: 40px;
  color: var(--grey);
  font-weight: 500;
}
.colorsList {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
}
.colorsItem {
  display: flex;
}
.colorsItemButton {
  padding: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  box-shadow: 0 4px 4px transparent;
  transition: box-shadow 0.3s ease-out;
}
.colorsItemButton.active {
  box-shadow: 0 4px 4px var(--black-40);
}
.colorsName {
  text-align: center;
  margin-bottom: 17px;
  font-weight: 600;
  color: var(--grey);
}
.modelPageComplectationsTitle {
  text-align: center;
  margin-bottom: 40px;
}
.equipment {
  margin-bottom: 80px;
}
.equipmentButton {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 30px 20px;
  color: var(--black-main);
  font-weight: 600;
  border-radius: 0;
  border-bottom: 1px solid #C4C4C4;
  transition: color 0.3s ease-out;
}
.equipmentButton:hover,
.equipmentButton.active {
  color: var(--blue-main);
}
.equipmentButton svg {
  transform: rotate(0);
  transition: transform 0.3s ease-out;
}
.equipmentButton.active svg {
  transform: rotate(180deg);
}
.equipmentDropdown {
  display: none;
}
.equipmentDropdown table {
  margin-bottom: 20px;
  width: 100%;
  border-collapse: collapse;
}
.equipmentDropdown thead {
  background-color: #F7F8F8;
  color: var(--blue-main);
}
.equipmentDropdown thead th {
  padding: 18px 0;
}
.equipmentDropdown tbody td {
  padding: 18px 0;
  border-bottom: 1px solid #C4C4C4;
  text-align: center;
  width: 20%;
}
.equipmentDropdown tbody td:first-child {
  text-align: left;
  width: 40%;
}
.modelPageDescriptionItem {
  margin-bottom: 60px;
}
.modelPageDescriptionTitle {
  text-align: center;
  margin-bottom: 40px;
}
.modelPageDescriptionList {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.modelPageDescriptionListItem {
  width: 100%;
}
.modelPageDescriptionListDouble .modelPageDescriptionListItem {
  width: calc(50% - 15px);
}
.modelPageDescriptionListTriple .modelPageDescriptionListItem {
  width: calc(33.33% - 20px);
}
.modelPageDescriptionListItem img {
  border-radius: 20px;
  margin-bottom: 30px;
  height: 435px;
  object-fit: cover;
  width: 100%;
}
.modelPageDescriptionItemImage {
  border-radius: 20px;
  margin-top: 30px;
}
.modelPageDescriptionSubtitle {
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 14px;
}
.modelPageDescriptionText {
  color: var(--grey);
  font-weight: 500;
}
.modelPageSlider {
  overflow: hidden;
  position: relative;
  margin-bottom: 60px;
}
.modelPageSliderNavButton {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--bg-overlay);
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  padding: 0;
  transition: background-color 0.3s ease-out;
}
.modelPageSliderNavButtonPrev {
  left: 100px;
}
.modelPageSliderNavButtonNext {
  right: 100px;
}
.modelPageSliderNavButton:hover {
  background-color: rgba(77, 112, 255, 0.6);
}
.modelPageSliderNavButton svg path {
  stroke: var(--white);
}
@media (max-width: 1200px) {
  .modelPageTechsValue {
    font-size: 30px;
  }
  .modelPageTechsName {
    font-size: 14px;
  }
  .modelPageTechsItem {
    gap: 10px;
  }
  .modelPageSlider {
    height: 885px;
  }
  .modelPageSlider .mainBannerImage {
    height: 885px;
  }
  .modelPageSlider .mainBannerImage img {
    height: inherit;
  }
}
@media (max-width: 1000px) {
  .modelPageNav {
    padding: 24px 0;
  }
  .modelPageList {
    gap: 18px;
  }
  .modelPageNavItem {
    width: calc(25% - 14px);
  }
  .modelPageNavLink {
    padding: 17px;
  }
  .modelPageTechs {
    padding: 34px 0;
  }
  .modelPageTechsTitle {
    margin-bottom: 30px;
  }
  .modelPageTechsList {
    gap: 24px;
    flex-wrap: wrap;
    justify-content: center;
  }
  .modelPageTechsItem {
    gap: 10px;
  }
  .modelPageTechsValue {
    font-size: 22px;
    line-height: 22px;
  }
  .modelPageTechsName {
    line-height: 16px;
  }
  .colors {
    padding: 40px 38px 60px;
  }
  .colorsTitle {
    margin-bottom: 16px;
  }
  .colorsSubtitle {
    margin-bottom: 20px;
  }
  .colorsList {
    gap: 16px;
  }
  .colorsItemButton {
    width: 36px;
    height: 36px;
  }
  .colorsName {
    font-size: 16px;
    line-height: normal;
  }
  .modelPageComplectationsTitle {
    margin-bottom: 30px;
  }
  .equipmentDropdown tbody td {
    padding: 14px 0;
  }
  .modelPageDescriptionItem {
    margin-bottom: 60px;
  }
  .modelPageDescriptionTitle {
    margin-bottom: 12px;
  }
  .modelPageDescriptionListDouble .modelPageDescriptionListItem {
    width: 100%;
  }
  .modelPageDescriptionListTriple .modelPageDescriptionListItem {
    width: 100%;
  }
  .modelPageDescriptionSubtitle {
    font-size: 20px;
    margin-bottom: 12px;
  }
  .modelPageDescriptionListItem img,
  .modelPageDescriptionItemImage {
    width: 100%;
    height: auto;
  }
  .modelPageSlider {
    height: 354px;
  }
  .modelPageSlider .mainBannerImage {
    height: 354px;
  }
  .modelPageSliderNavButtonNext {
    right: 60px;
  }
  .modelPageSliderNavButtonPrev {
    left: 60px;
  }
}
@media (max-width: 700px) {
  .modelPageNav {
    padding: 20px 0;
  }
  .modelPageList {
    gap: 16px 12px;
    flex-wrap: wrap;
  }
  .modelPageNavItem {
    width: 100%;
  }
  .modelPageNavLink {
    padding: 16px;
    font-size: 12px;
  }
  .modelPageTechs {
    padding: 24px 0;
    background-size: cover;
  }
  .modelPageTechsTitle {
    margin-bottom: 20px;
  }
  .modelPageTechsList {
    gap: 0;
  }
  .modelPageTechsItem {
    gap: 10px;
    width: 100%;
    padding: 10px 0;
  }
  .colors {
    padding: 32px 0;
  }
  .colorsTitle {
    margin-bottom: 8px;
  }
  .colorsList {
    gap: 12px;
  }
  .colorsItemButton {
    width: 22px;
    height: 22px;
  }
  .colorsName {
    font-size: 12px;
  }
  .modelPageComplectationsTitle {
    margin-bottom: 20px;
  }
  .equipmentButton {
    padding: 20px 12px;
  }
  .equipmentDropdown {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none; 
  }
  .equipmentDropdown::-webkit-scrollbar {
    display: none;
  }
  .equipmentDropdown tbody td:first-child {
    width: 30%;
  }
  .equipmentDropdown tbody td {
    padding: 8px 0;
  }
  .modelPageDescriptionItem {
    margin-bottom: 32px;
  }
  .modelPageDescriptionTitle {
    margin-bottom: 8px;
    line-height: 26px;
  }
  .modelPageDescriptionSubtitle {
    font-size: 16px;
    line-height: 24px;
  }
  .modelPageSlider {
    height: 310px;
    padding-bottom: 32px;
    margin-bottom: 20px;
  }
  .modelPageSlider .mainBannerImage {
    height: 260px;
  }
  .modelPageSliderNav {
    display: flex;
    justify-content: center;
    gap: 12px;
    align-items: center;
  }
  .modelPageSliderNavButton {
    position: static;
    top: unset;
    transform: translateY(0);
    background-color: var(--bg-overlay);
    width: 32px;
    height: 32px;
  }
  .modelPageSliderNavButtonNext {
    right: unset;
  }
  .modelPageSliderNavButtonPrev {
    left: unset;
  }
  .modelPageDescriptionText {
    font-size: 12px;
    line-height: 20px;
  }
  .modelPageDescriptionListItem img, .modelPageDescriptionItemImage {
    margin: 20px 0 12px;
  }
  .modelPageDescriptionList {
    gap: 10px;
  }
}
.catalogList {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}
.catalogPageTabs {
  padding: 40px 0;
  background-color: var(--grey-light);
}
.catalogPageTabsList {
  display: flex;
  gap: 60px;
  justify-content: center;
  align-items: center;
}
.catalogPageTabsItem {
  width: calc(33.33% - 40px);
}
.catalogPageTabsButton {
  font-weight: 600;
  text-align: center;
  color: var(--black-main);
  display: block;
  width: 100%;
  padding: 28px;
  background-color: var(--white);
  border-radius: 8px;
  border: 1px solid #C4C4C4;
  transition: border-color 0.3s ease-out, background-color 0.3s ease-out, color 0.3s ease-out;
}
.catalogPageTabsButton.active,
.catalogPageTabsButton:hover {
  background-color: var(--blue-bg);
  border: 1px solid var(--blue-main);
  color: var(--blue-main);
}
.catalogNav {
  padding: 40px 0;
  background-color: var(--white);
}
.catalogNavList {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}
.catalogPageNavButton {
  padding: 10px 23px;
  background-color: var(--white);
  border: 1px solid var(--black-main);
  color: var(--black-main);
  text-transform: uppercase;
  font-weight: 500;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}
.catalogPageNavButton.active,
.catalogPageNavButton:hover {
  background-color: var(--black-main);
  color: var(--white);
}
.catalogBody {
  max-height: 0px;
  transition-duration: 0.4s;
  overflow: hidden;
}
.catalogList {
  padding: 10px 4px;
  margin-bottom: 30px;
}
.catalogItem {
  padding: 16px;
  border-radius: 12px;
  background-color: var(--white);
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: box-shadow 0.3s ease-out;
  position: relative;
  width: calc(25% - 22.5px);
}
.catalogItem:hover {
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
}
.catalogItemImage {
  width: 100%;
  height: 215px;
  margin-bottom: 24px;
}
.catalogItemImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.catalogItemTitle {
  font-size: 18px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 22px;
}
.catalogItemSpecsList {
  display: flex;
  flex-direction: column;
  margin-bottom: 14px;
}
.catalogItemSpecsItem {
  display: flex;
  align-items: center;
  gap: 12px;
}
.catalogItemSpecsItemText {
  line-height: 32px;
  font-weight: 500;
  color: var(--grey);
}
.catalogItemFooter {
  margin-top: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.catalogItemPrice {
  font-size: 22px;
  line-height: 32px;
  font-weight: 600;
}
.catalogItemButton {
  padding: 14px;
  font-size: 16px;
  font-weight: 500;
}
@media (max-width: 1300px) {
  .catalogPageTabs {
    padding: 20px 0;
  }
  .catalogItem {
    width: calc(33.33% - 20px);
  }
}
@media (max-width: 1000px) {
  .catalogPageTabs {
    padding: 30px 0;
  }
  .catalogPageTabsList {
    gap: 20px;
  }
  .catalogPageTabsItem {
    width: calc(33.33% - 13px);
  }
  .catalogPageTabsButton {
    padding: 24px 10px;
  }
  .catalogList {
    gap: 20px;
  }
  .catalogItem {
    width: calc(50% - 10px);
  }
  .catalogNav {
    padding: 32px 0;
  }
}
@media (max-width: 800px) {
  .catalogPageTabsList {
    flex-wrap: wrap;
  }
  .catalogPageTabsItem {
    width: 100%;
  }
}
@media (max-width: 700px) {
  .catalogPageTabs {
    padding: 20px 0;
  }
  .catalogPageTabsButton {
    padding: 16px;
    font-size: 14px;
    line-height: normal;
  }
  .catalogNav {
    padding: 30px 0;
  }
  .catalogPageNavButton {
    padding: 12px 20px;
    font-size: 18px;
  }
  .catalogItem {
    width: 100%;
  }
  .catalogNavList {
    gap: 16px;
  }
  .catalogList {
    margin-bottom: 10px;
  }
}
.productPageInfoContent {
  display: flex;
  gap: 80px;
}
.productPageGallery {
  width: calc(50% - 80px);
}
.productPageChars {
  width: 50%;
}
.catalogEmpty {
  padding: 250px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 46px;
}
.catalogEmpty p {
  font-size: 30px;
  line-height: 36px;
  text-align: center;
}
.colorImage {
  text-align: center;
}
.productPageInfo {
  padding: 30px 0 80px;
}
.productPageInfoBack {
  padding: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: var(--white);
  border: 1px solid #E1E4EC;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  transition: background-color 0.3s ease-out, border-color 0.3s ease-out;
}
.productPageInfoBack svg path {
  fill: var(--black-main);
  transition: stroke 0.3s ease-out;
}
.productPageInfoBack:hover {
  background-color: var(--black-main);
  border: 1px solid var(--black-main);
}
.productPageInfoBack:hover svg path {
  fill: var(--white);
}
.productPageCharsTitle {
  font-size: 30px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 30px;
}
.productPageCharsItem {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid #DADADA;
}
.productPageCharsItemLabel {
  font-size: 18px;
  line-height: 32px;
  font-weight: 500;
}
.productPageCharsItemValue {
  font-size: 18px;
  line-height: 32px;
  font-weight: 600;
}
.productPageInfoBottom {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  align-items: flex-end;
}
.productPageInfoPrice {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.productPageInfoPriceValue {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
}
@media (max-width: 1300px) {
  .productPageInfoContent {
    gap: 40px;
  }
  .productPageGallery {
    width: calc(50% - 20px);
  }
  .productPageChars {
    width: calc(50% - 20px);
  }
}
@media (max-width: 1000px) {
  .productPageInfoContent {
    flex-direction: column-reverse;
  }
  .productPageGallery {
    width: 100%;
  }
  .productPageChars {
    width: 100%;
  }
  .productPageInfoBack {
    margin-bottom: 0;
  }
  .productPageCharsTitle {
    text-align: center;
  }
  .productPageInfo {
    padding: 40px 0;
  }
}
@media (max-width: 700px) {
  .productPageCharsTitle {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 20px;
  }
  .productPageInfo {
    padding: 32px 0;
  }
  .productPageCharsItemLabel,
  .productPageCharsItemValue {
    font-size: 14px;
    line-height: normal;
  }
  .productPageInfoPriceLabel {
    font-size: 12px;
    line-height: 32px;
  }
  .productPageInfoPriceValue {
    font-size: 22px;
    line-height: 22px;
  }
}
.stockItems {
  margin-bottom: 80px;
}
.stockItemsHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 48px;
}
.stockItemsHeaderButton {
  display: flex;
  align-items: center;
  gap: 8px;
}
.stockItemsTitle {
  font-size: 36px;
  line-height: 40px;
  font-weight: 600;
}
.stockItemsList {
  display: flex;
  gap: 30px;
}
.stockItemsList .catalogItem {
  width: calc(25% - 20px);
}
@media (max-width: 1400px) {
  .stockItemsList .catalogItem {
    width: calc(33.33% - 20px);
  }
  .stockItemsList .catalogItem:last-child {
    display: none;
  }
}
@media (max-width: 1000px) {
  .stockItems {
    margin-bottom: 40px;
  }
  .stockItemsHeader {
    margin-bottom: 30px;
  }
  .stockItemsTitle {
    font-size: 28px;
    line-height: 36px;
  }
  .stockItemsList {
    gap: 20px;
  }
  .stockItemsList .catalogItem {
    width: calc(50% - 10px);
  }
  .stockItemsList .catalogItem:nth-last-child(2) {
    display: none;
  }
}
@media (max-width: 700px) {
  .stockItems {
    margin-bottom: 32px;
  }
  .stockItemsHeader {
    margin-bottom: 20px;
    gap: 20px;
    flex-direction: column;
    align-items: center;
  }
  .stockItemsTitle {
    font-size: 22px;
  }
  .stockItemsList {
    gap: 20px;
    flex-wrap: wrap;
  }
  .stockItemsList .catalogItem {
    width: 100%;
  }
  .stockItemsList .catalogItem:nth-last-child(2),
  .stockItemsList .catalogItem:last-child {
    display: flex;
  }
}
.catalogItemStickers {
  position: absolute;
  top: 14px;
  left: 14px;
  display: flex;
  gap: 10px;
}
.catalogItemSticker {
  border-radius: 40px;
  padding: 6px 12px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  line-height: normal;
  font-weight: 500;
}
.catalogItemStickerHybrid {
  color: #133F4C;
  background-color: #C6DFEB;
}
.catalogItemStickerElectro {
  color: #413860;
  background-color: #D5CAFF;
}
.catalogItemStickerOnHold {
  color: #894F0C;
  background-color: #E2EBC6;
}
.catalogItemStickerReserved {
  color: #0C2F89;
  background-color: #9DE9F1;
}
.catalogItemStickerInTransit {
  color: #1E7247;
  background-color: #B4FFD9;
}
.catalogItemStickerNew {
  color: #1E3C72;
  background-color: #B4CEFF;
}
.catalogItemStickerTradeIn {
  color: #45184F;
  background-color: #FFD7F5;
}
.productPageInfoButtonHold {
  padding: 16px 24px;
  border-radius: 8px;
  background-color: #55BDD5;
  color: #003643;
}
.productPageInfoButtonReserved {
  padding: 16px 24px;
  border-radius: 8px;
  background-color: #FA99B5;
  color: #560000;
}
.productPageInfoButtonTransit {
  padding: 16px 24px;
  border-radius: 8px;
  background-color: #43CA86;
  color: #083200;
}
@media (max-width: 700px) {
  .catalogItemStickers {
    top: 10px;
    left: 10px;
  }
  .productPageInfoButtonHold,
  .productPageInfoButtonReserved,
  .productPageInfoButtonTransit {
    padding: 12px 18px;
    font-size: 14px;
  }
}
.errorPageContent {
  padding: 130px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.errorPageContent svg,
.errorPageContent img {
  max-width: 1030px;
  width: 100%;
  height: auto;
}
.errorPageContentTitle {
  font-size: 40px;
  line-height: normal;
  font-weight: 600;
  text-align: center;
  margin-bottom: 28px;
  margin-top: -100px;
}
@media (max-width: 1000px) {
  .errorPageContent {
    padding: 78px 0;
  }
  .errorPageContent svg,
  .errorPageContent img {
    max-width: 650px;
  }
  .errorPageContentTitle {
    font-size: 24px;
    margin-bottom: 18px;
    margin-top: -60px;
  }
}
@media (max-width: 700px) {
  .errorPageContent {
    padding: 130px 0;
  }
  .errorPageContent svg,
  .errorPageContent img {
    max-width: 320px;
  }
  .errorPageContentTitle {
    font-size: 16px;
    margin-top: 0;
  }
  .errorPageContentLink {
    padding: 16px 24px;
  }
}
.infoPageContentTrade {
  padding: 46px 0;
  display: flex;
  gap: 62px;
}
.infoPageContentTradeDesc {
  width: calc(100% - 704px);
}
.infoPageContentTradeForm {
  width: 732px;
}
.tradeInForm {
  text-align: center;
  padding: 32px;
  border-radius: 30px;
  background-image: url(../images/bg/form2-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
}
.tradeInFormTitle {
  font-size: 36px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 10px;
}
.tradeInFormDesc {
  margin-bottom: 28px;
}
.tradeInFormButton {
  width: 100%;
}
.tradeInForm .formField {
  width: 100%;
}
.tradeInForm .formFieldAgree label,
.tradeInForm .formFieldAgree label a {
  color: var(--black-main);
}
.formTextarea {
  width: 100%;
  padding: 17px;
  border-radius: 8px;
  background-color: var(--white);
  color: var(--black-main);
  border: 1px solid var(--grey-stroke);
  resize: none;
  height: 118px;
}
.tradeInForm .formFieldAgree label::before {
  background: url(../images/icons/checkbox-black.svg) no-repeat center center;
}
.tradeInForm .formFieldAgree label::after {
  background: url(../images/icons/checkbox-black-marker.svg) no-repeat center center;
}
.infoPageContentTradeDesc {
  color: var(--grey);
  font-weight: 500;
}
.infoPageContentTradeDesc div {
  margin-bottom: 28px;
}
.infoPageContentTradeDesc h3 {
  color: var(--black-main);
  font-weight: 600;
  font-size: 24px;
  line-height: 40px;
  margin-bottom: 16px;
}
.infoPageContentTradeDesc ul {
  margin-left: 20px;
  margin-bottom: 38px;
}
.infoPageContentTradeDesc ul li {
  position: relative;
}
.infoPageContentTradeDesc ul li a {
  color: var(--black-main);
  transition: color 0.3s ease-out;
}
.infoPageContentTradeDesc ul li a:hover {
  color: var(--blue-light-text);
}
.infoPageContentTradeDesc ul li::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -20px;
  width: 6px;
  height: 6px;
  background-color: var(--blue-light-text);
  border-radius: 50%;
}
@media (max-width: 1400px) {
  .infoPageContentTrade {
    gap: 42px;
  }
  .infoPageContentTradeDesc {
    width: calc(100% - 542px);
  }
  .infoPageContentTradeForm {
    width: 500px;
  }
}
@media (max-width: 1200px) {
  .infoPageContentTrade {
    gap: 26px;
    flex-direction: column;
  }
  .infoPageContentTradeDesc {
    width: 100%;
  }
  .infoPageContentTradeForm {
    width: 100%;
  }
}
@media (max-width: 700px) {
  .infoPageContentTradeDesc {
    font-size: 14px;
    line-height: 22px;
  }
  .infoPageContentTradeDesc div {
    margin-bottom: 16px;
  }
  .infoPageContentTradeDesc h3 {
    font-size: 16px;
    line-height: normal;
    margin-bottom: 11px;
  }
  .infoPageContentTradeDesc ul {
    margin-bottom: 16px;
  }
  .infoPageContentTrade {
    padding: 12px 0;
    gap: 16px;
  }
  .tradeInForm {
    padding: 20px 10px;
    border-radius: 24px;
  }
  .tradeInFormTitle {
    font-size: 20px;
    line-height: 36px;
  }
  .tradeInFormDesc {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 15px;
  }
}
.pageHeroService {
  margin-top: 28px;
  width: fit-content;
  padding: 36px;
  border-radius: 20px;
  background-color: var(--white-45);
  backdrop-filter: blur(4px);
}
.pageHeroService p {
  font-size: 24px;
  line-height: 34px;
  font-weight: 600;
  margin-bottom: 15px;
}
.pageHeroService ul {
  margin-left: 20px;
}
.pageHeroService ul li {
  position: relative;
}
.pageHeroService ul li::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -20px;
  width: 6px;
  height: 6px;
  background-color: var(--blue-light-text);
  border-radius: 50%;
}
.pageHeroService ul li a {
  font-size: 20px;
  line-height: 30px;
  font-weight: 600;
  color: var(--black-main);
  transition: color 0.3s ease-out;
}
.pageHeroService ul li a:hover {
  color: var(--blue-light-text);
}
@media (max-width: 1100px) {
  .pageHeroService {
    display: none;
  }
}
@media (max-width: 700px) {
  .pageHeroService {
    display: block;
    margin-top: 18px;
    padding: 14px;
  }
  .pageHeroService p {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 6px;
  }
  .pageHeroService ul li a {
    font-size: 18px;
  }
  .pageHeroTitleStyle {
    color: var(--grey-dark);
  }
}
.leasingPartners {
  padding: 60px 0;
}
.pageHeroLeasing {
  font-size: 24px;
  line-height: 36px;
  font-weight: 500;
  color: var(--white);
  max-width: 670px;
  width: 100%;
  margin-top: 20px;
}
.leasingInfo {
  display: flex;
  gap: 50px;
  margin: 30px 0;
}
.leasingInfo div {
  width: calc(50% - 25px);
  padding: 20px 30px;
  border-radius: 8px;
  background-color: #F7F7F7; 
}
.leasingInfo h3 {
  font-size: 20px;
  line-height: 30px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 26px;
}
.leasingInfo p {
  text-align: center;
}
.leasingTitle {
  font-size: 20px;
  line-height: 30px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 26px;
}
.leasingList {
  display: flex;
  gap: 20px;
  justify-content: space-between;
}
.leasingItem {
  width: calc(33.33% - 13.33px);
}
.leasingLink {
  display: flex;
  justify-content: center;
  width: 100%;
}
@media (max-width: 1000px) {
  .leasingInfo {
    flex-direction: column;
    gap: 20px;
  }
  .leasingInfo div {
    width: 100%;
  }
  .leasingInfo h3 {
    margin-bottom: 20px;
  }
}
@media (max-width: 700px) {
  .leasingList {
    flex-direction: column;
  }
  .leasingItem {
    width: 100%;
  }
  .leasingPartners {
    padding: 30px 0;
  }
  .pageHeroLeasing {
    font-size: 16px;
    line-height: 26px;
  }
}
.pageHeroButton {
  display: inline-block;
  margin-top: 28px;
}
.homeAboutItemTitleText {
  font-size: 36px;
  line-height: 40px;
  font-weight: 600;
  margin-bottom: 20px;
}
.infoPageContent .homeAbout {
  margin-bottom: 60px;
}
@media (max-width: 1000px) {
  .homeAboutItemTitleText {
    font-size: 24px;
    line-height: normal;
  }
  .infoPageContent .homeAbout {
    margin-bottom: 40px;
  }
}
@media (max-width: 700px) {
  .homeAboutItemTitleText {
    font-size: 18px;
    margin-bottom: 16px;
  }
  .infoPageContent .homeAbout {
    margin-bottom: 32px;
  }
}
.infoPageGbs {
  padding: 60px 0;
}
.infoPageGbs p,
.infoPageGbs div {
  margin-bottom: 30px;
}
.infoPageGbs h2 {
  font-size: 32px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 16px;
}
@media (max-width: 700px) {
  .infoPageGbs {
    padding: 20px 0;
  }
  .infoPageGbs p,
  .infoPageGbs div {
    margin-bottom: 20px;
  }
  .infoPageGbs h2 {
    font-size: 22px;
    margin-bottom: 12px;
  }
}
.homeFormContacts .formField {
  width: 100%;
}
.contactsInfo {
  display: flex;
  gap: 30px;
  padding: 60px 0;
}
.contactsInfoContent {
  max-width: 580px;
  width: 100%;
  padding: 38px 36px;
  border-radius: 20px;
  border: 1px solid var(--grey-stroke);
}
.contactsInfoMap {
  width: calc(100% - 610px);
}
.contactsInfoMap iframe {
  width: 100%;
  height: 100%;
}
.contactsInfoTitle {
  font-size: 32px;
  line-height: normal;
  font-weight: 600;
  margin-bottom: 36px;
}
.contactsInfoList {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.contactsInfoItem span,
.contactsInfoItem a {
  display: flex;
  gap: 20px;
  align-items: center;
  color: var(--black-main);
}
.contactsInfoItemWrapper {
  display: flex;
  align-items: center;
  gap: 0 20px;
  flex-wrap: wrap;
}
.contactsInfoItemWrapper div {
  display: flex;
  flex-direction: column;
  width: calc(100% - 52px);
}
@media (max-width: 1000px) {
  .contactsInfo {
    flex-direction: column;
    gap: 20px;
    padding: 20px 0 60px;
  }
  .contactsInfoContent {
    max-width: 100%;
  }
  .contactsInfoMap {
    width: 100%;
  }
  .contactsInfoMap iframe {
    height: 618px;
  }
}
@media (max-width: 700px) {
  .contactsInfo {
    flex-direction: column;
    padding: 20px 0 50px;
  }
  .contactsInfoMap iframe {
    height: 270px;
  }
  .contactsInfoTitle {
    font-size: 18px;
    margin-bottom: 14px;
  }
  .contactsInfoList {
    gap: 12px;
  }
  .contactsInfoItem span,
  .contactsInfoItem a {
    gap: 12px;
    font-size: 12px;
    line-height: normal;
  }
  .contactsInfoItem span svg,
  .contactsInfoItem a svg,
  .contactsInfoItemWrapper svg {
    width: 20px;
    height: 20px;
  }
  .contactsInfoItemWrapper div {
    width: calc(100% - 44px);
  }
  .contactsInfoContent {
    padding: 16px 13px;
  }
}
.newsList {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}
.newsItemImage {
  height: 290px;
}
.gdpr {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px 0;
  color: #000;
  background-color: #fff;
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
  z-index: 99999;
}

.gdprTitle {
    font-size: 19px;
    font-weight: 500;
}

.gdprText {
  padding-top: 10px;
  display: block;
}


.gdprText a:hover {
  border-color: white;
}

.gdprBtn {
  cursor: pointer;
}

.gdprBtnNot {
    font-size: 16px;
}

.gdprButtons {
  margin-top: 14px;
  display: flex;
  gap: 10px;
}

.newsPageTop {
  padding: 60px 0;
  position: relative;
}
.newsPageTopTitle {
  font-size: 58px;
  line-height: 74px;
  font-weight: 600;
  margin-bottom: 38px;
  text-align: center;
  padding: 0 60px;
}
.newsPageTopDate {
  text-align: center;
}
.newsPageTopBack {
  position: absolute;
  top: 48px;
  left: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid #E1E4EC;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.newsPageContentBody img {
  margin-bottom: 60px;
  border-radius: 20px;
}
.newsPageContentBody a {
 color: var(--black-main);
 font-style: italic;
}
@media (max-width: 1000px) {
  .newsPageTop {
    padding: 30px 0;
  }
  .newsPageTopTitle {
    font-size: 40px;
    line-height: 48px;
    margin-bottom: 20px;
    padding: 0 48px;
  }
  .newsPageContentBody img {
    margin-bottom: 30px;
  }
}
@media (max-width: 700px) {
  .newsPageTop {
    padding: 20px 0;
  }
  .newsPageTopTitle {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 10px;
    padding: 0 38px;
  }
  .newsPageContentBody img {
    margin-bottom: 16px;
  }
  .newsPageContentBody,
  .newsPageContentBody p,
  .newsPageContentBody div {
    font-size: 12px;
    line-height: 20px;
  }
  .newsPageTopDate {
    font-size: 12px;
    line-height: 20px;
  }
  .newsPageTopBack {
    top: 20px;
    width: 34px;
    height: 34px;
  }
}