* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

@font-face {
  font-family: "Motorrad";
  src: url("/static/fonts/moto/BMWMotorrad-Regular.woff2") format("woff2"),
    url("/static/fonts/moto/BMWMotorrad-Regular.ttf") format("ttf");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Motorrad";
  src: url("/static/fonts/moto/BMWMotorrad-Heavy.woff2") format("woff2"),
    url("/static/fonts/moto/BMWMotorrad-Heavy.ttf") format("ttf");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: "Motorrad";
  src: url("/static/fonts/moto/BMWMotorrad-Bold.woff2") format("woff2"),
    url("/static/fonts/moto/BMWMotorrad-Bold.ttf") format("ttf");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "Motorrad";
  src: url("/static/fonts/moto/BMWMotorrad-Light.woff2") format("woff2"),
    url("/static/fonts/moto/BMWMotorrad-Light.ttf") format("ttf");
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: "Motorrad";
  src: url("/static/fonts/moto/BMWMotorradOutline-Regular.woff2") format("woff2"),
    url("/static/fonts/moto/BMWMotorradOutline-Regular.ttf") format("ttf");
  font-weight: 450;
}

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

:root {
  --font-size: calc(1 / 1920 * 100vw);
  --font-size-mobile: calc(1 / 375 * 100vw);
  --color-blue: #0062FF
}

[bg="dark"] {
  background: #000;
  color: #fff;
  border-color: #fff;
}

[bg="light"] {
  background: #fff;
  color: #000;
  border-color: #000;
}

[bg="gray"] {
  background: #f2f2f2;
  color: #000;
  border-color: #000;
}

[bg="dark-gray"] {
  background: #2b2e33;
  color: #fff;
}

[color="dark"] {
  color: #000;
}

[color="light"] {
  color: #fff;
}

[bg="dark"] .bg-wrapper,
[bg="light"] .bg-wrapper,
[bg="gray"] .bg-wrapper {
  z-index: 0;
}

[bg="gray"] .btn,
[bg="light"] .btn,
[color="dark"] .btn {
  border: 1px #000 solid;
}

html {
  font-size: var(--font-size);
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  font-size: 14rem;
  /* overflow-x: hidden; */
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  font-family: "Motorrad", sans-serif;
  font-weight: 400;
}

main {
  flex: 1 0 0;
}

.header {
  font-size: 18rem;
  position: relative;
  width: 100%;
  background: #fff;
  z-index: 999;
  border-bottom: 1px #d9d9d9 solid;
}

.header .content {
  gap: 136rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header_panel {
  font-size: 14px;
}

.header_panel .content {
  padding-top: 5rem;
  padding-bottom: 5rem;
  gap: 89rem;
}

.contact_links {
  display: flex;
  align-items: center;
  margin-right: auto;
  gap: 46.46rem;
}

.contact_links a {
  display: flex;
  align-items: center;
}

.contact_links a strong {
  vertical-align: middle;
  margin-left: 0.66em;
}

.lang_select {
  display: flex;
  align-items: center;
}

.lang_container {
  display: inline-flex;
  margin-left: 4rem;
}

.header_panel .dropdown__link::after {
  filter: none;
}

.header_panel .nav__item {
  padding: 10rem;
}

.header_panel .dropdown__menu {
  background: #000;
}
.dropdown__menu h2 {
  font-size: 40rem;
}
.lang_select .dropdown__menu {
  padding: 15rem;
  border-radius: 1.5rem;
  transform: translate(-20%, 26.4rem);
}

.col {
  display: flex;
  flex-direction: column;
}

.nav__links {
  display: flex;
  align-items: center;
  gap: 50rem;
}

.nav__item {
  padding: 26rem 0;
}

.dropdown__menu {
  position: absolute;
  z-index: 1;
  flex-direction: column;
  justify-content: flex-start;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
  padding: 20rem;
  display: none;
  transform: translateY(26.4rem);
  gap: 10rem;
}

.dropdown__link {
  display: inline-flex;
  align-items: center;
}

.dropdown__link::after {
  content: "";
  background: url(/static/img/moto/icons/arrow.svg) no-repeat center / contain;
  display: inline-flex;
  width: 9rem;
  height: 6rem;
  filter: invert(1);
  margin-left: 9rem;
  margin-top: 1.5rem;
}

.dropdown__item.active .dropdown__menu {
  display: flex;
}

.dropdown__menu::-webkit-scrollbar {
  display: none;
}

.dropdown__menu {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.dropdown__item.active .dropdown__link::after {
  transform: rotate(-180deg);
}

.dropdown__item.active .dropdown__link,
.h-opacity:hover {
  opacity: 0.75;
}

.lang_container .dropdown_lang {
  position: absolute;
  top: 2rem;
  left: 0;
  background: #000;
  transition: 0.3s;
  border-radius: 10rem;
  padding: 10rem;
  padding-top: 0;
  display: none;
}

.lang_container:hover .dropdown_lang {
  display: block;
  font-weight: 700;
}

.logo_container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.motorrad_logo {
  padding-right: 33.39rem;
  border-right: #000000 1px solid;
  margin-right: 31.9rem;
}

.bmw_mini_logo {
  display: flex;
  align-items: center;
  gap: 20.09rem;
}

img {
  object-fit: cover;
  max-width: 100%;
}

.content {
  max-width: 1740rem;
  margin: 0 auto;
  padding: 0 20rem;
}

.container {
  padding: 102rem 0 131rem;
  position: relative;
}

h1 {
  font-size: 100rem;
  font-weight: 700;
}

h2 {
  font-size: 80rem;
  text-transform: uppercase;
}

.text {
  font-size: 18rem;
}

h3 {
  font-size: 32rem;
}

h4 {
  font-size: 24rem;
}

.text_outline {
  color: transparent;
  -webkit-text-stroke: 1rem #000;
}

[bg="dark"] .text_outline,
[color="light"] .text_outline {
  -webkit-text-stroke-color: #fff;
}

.phone::before {
  content: "";
  background: url("/static/img/moto/icons/phone.svg") no-repeat;
  background-size: cover;
  display: block;
  width: 16rem;
  height: 16rem;
  float: left;
  margin-right: 22rem;
}

.search::before {
  content: "";
  background: url("/static/img/moto/icons/search.svg") no-repeat;
  background-size: cover;
  display: block;
  width: 16rem;
  height: 16rem;
  float: left;
  margin-right: 21.51rem;
}



.page_header .crumbs h2 {
  line-height: 1;
}

.page_header .content {
  display: flex;
  justify-content: space-between;
}

.page_description {
  padding-left: 67rem;
  max-width: 570rem;
  border-left: 1px #fff solid;
  font-size: 18rem;
  display: flex;
  flex-direction: column;
  text-wrap: balance;
}

.page_description .border_top {
  max-width: 170rem;
  font-size: 14rem;
  margin-top: 45rem;
  padding-top: 20rem;
  border-top: 5px solid #fff;
}

.map_button::before {
  content: "";
  background: url("/static/img/moto/icons/location.svg") no-repeat;
  background-size: cover;
  display: block;
  width: 14.3rem;
  height: 16rem;
  float: left;
  margin-right: 22.25rem;
}

.socials {
  display: flex;
  align-items: center;
}

.instagram::before {
  content: "";
  background: url("/static/img/moto/icons/instagram.svg") no-repeat;
  background-size: cover;
  display: block;
  width: 16rem;
  height: 16rem;
  float: left;
  margin-right: 21.51rem;
}

.facebook::before {
  content: "";
  background: url("/static/img/moto/icons/facebook.svg") no-repeat;
  background-size: cover;
  display: block;
  width: 7.62rem;
  height: 14.75rem;
  float: left;
  margin-right: 21.51rem;
}

.youtube::before {
  content: "";
  background: url("/static/img/moto/icons/youtube.svg") no-repeat;
  background-size: cover;
  display: block;
  float: left;
  margin-right: 21.51rem;
  width: 20.91rem;
  height: 14.63rem;
}

.main_banner {
  height: calc(100vh - 152rem);
  position: relative;
  overflow: hidden;
  min-height: 650px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.main_banner .content {
  width: 1740rem;
  display: flex;
  align-items: center;
  height: 100%;
}

.banner_content {
  display: flex;
  align-items: start;
  flex-direction: column;
  text-transform: uppercase;
  margin-bottom: 12vh;
  max-width: 80%;
  text-wrap: balance;
}

.banner_content .btn {
  min-width: 285px;
}

.banner_content h3 {
  font-weight: 300;
  margin: 29.46rem 0 39.84rem;
}

.banner_content h1 {
  line-height: 1;
  text-shadow: 1px 1px 40rem #666;
}

.bg-wrapper {
  position: absolute;
  inset: 0;
  z-index: -1;
}

.bg-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.stock_link {
  background: #2b2e33;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 35rem 0;
  position: relative;
  bottom: 0;
  color: #fff;
  font-size: 20rem;
  left: 0;
}

.model_panel {
  width: 100%;
  padding: 17.5rem 0;
  position: sticky;
  top: 0;
  z-index: 100;
  color: #fff;
  font-size: 18rem;
  left: 0;
}

.model_panel .content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
}

.page_nav a:not(:last-child) {
  margin-right: 40rem;
}

.model_panel .btn {
  font-size: 14rem;
  padding: 12.5rem 26.5rem;
}

.model_panel .btn_container .btn:first-child {
  background: transparent;
  color: #fff;
}

.stock_link a {
  display: flex;
  align-items: center;
  gap: 28.57rem;
}

.stock_link a::before {
  content: "";
  display: block;
  background: url("/static/img/moto/icons/moto.svg") no-repeat;
  background-size: contain;
  width: 41.02rem;
  height: 29rem;
}

.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20rem 50rem;

  border: 1px solid;
  font-weight: 700;
  cursor: pointer;
  text-transform: uppercase;
}

.btn_container {
  display: flex;
  align-items: center;
}

.btn_container .btn:not(:last-child) {
  margin-right: 20rem;
}

.btn_white {
  background: #fff;
  color: #000;
  border-color: transparent;
}

.btn_blue {
  background: var(--color-blue);
}

.btn_black {
  background: transparent;
}

.section_header {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  font-size: 18rem;
}

.section_header p {
  font-size: 18rem;
  margin-top: 14.76rem;
}

.section_header h2 {
  line-height: 1;
}

.section_header .text {
  max-width: 60%;
}

.tabs__select {
  display: flex;
  align-items: center;
  align-self: flex-start;
  gap: 1.32em;
  position: relative;
}

.tabs__select::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1rem;
  left: 0;
  background-color: #6f6f6f;
  bottom: -17.53rem;
}

.tab {
  position: relative;
  cursor: pointer;
}

.tab.active {
  font-weight: 700;
}

.tab.active::after {
  content: "";
  position: absolute;
  bottom: -17.53rem;
  width: 100%;
  height: 4rem;
  left: 0;
  background: #000;
}

[bg="dark"] .tab.active::after {
  background: #fff;
}

.grid-2 {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(5, 1fr);
}

.grid-6 {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(6, 1fr);
}

.series {
  font-size: 32rem;
  text-orientation: sideways;
  writing-mode: tb-rl;
  transform: rotate(180deg);
  font-weight: 400;
  margin-top: 8rem;
  margin-right: 5rem;
}

.cell {
  padding: 57.88rem 52.61rem;
  background: #f2f2f2;
  position: relative;
  overflow: hidden;
  height: 100%;
  flex: 1;
}

.model_name {
  position: relative;
  opacity: 0.15;
  z-index: 2;
}

#modelLine .grid-5 {
  row-gap: 17.3rem;
  column-gap: 15.53rem;
}

#modelLine .section_header {
  margin-bottom: 66.46rem;
}

.cell1 {
  /* grid-area: 1 / 1 / 4 / 3; */
  width: 100%;
  min-height: 745rem;
  /* padding: 83.29rem 221.23rem 0 159.11rem; */
}

.cell4 .model_description {
  width: fit-content;
}

.cell4:last-child .model_description {
  width: fit-content;
}

.cell h2 {
  line-height: 0.9;
  font-size: 56rem;
}

.car_chunk {
  display: flex;
  gap: 15rem;
  height: 100%;
  width: 100%;
}

.car_chunk .col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 15rem;
  height: 100%;
}

.car_chunk .row {
  display: flex;
  gap: 15rem;
  flex: 1;
}

.model_name {
  max-width: 310rem;
  display: flex;
  align-items: flex-start;
  text-wrap: balance;
}

#mainModelsSlider {
  overflow: hidden;
  height: 1178.66667rem;
}

.cell3 {
  /* padding: 84.1rem 102.07rem; */
  background: #bababa;
  max-height: 587.25rem;
}



.cell2 {
  /* padding: 48.82rem 145.77rem; */
  height: 586.57rem;
}

.cell4 {
  /* padding: 86.88rem 102.97rem; */
}

.cell4 picture.car_img {
  width: 100%;
  right: -50%;
  bottom: 0;
  transform: scaleX(-1);
  height: 100%;
}

.cell .model_name {
  z-index: 0;
}

.cell2 .car_img {
  right: 0;
  bottom: 0;
  width: 50%;
  height: 100%;
}

.cell5 .text p {
  font-size: 18rem;
}

.cell5 {
  display: flex;
  flex-direction: column;
  /* padding: 129.58rem 85rem 137.97rem;.cell1 */
  justify-content: space-between;
}

.cell5 .model_description {
  width: 100%;
}

.cell5 .car_img {
  width: 80%;
  top: 50%;
  transform: translateY(-50%);
}

.heritage .cell4 .series {
  bottom: -31%;
  left: -23%;
}

.heritage .cell5 .series {
  bottom: -50%;
  left: -23%;
}

.row .model_description::after {
  max-width: 80%;
}

.cell5 .logo {
  width: 39.83rem;
  height: 77.13rem;
}

.logo img {
  width: 100%;
  height: 100%;
}

.cell .bg-wrapper {
  z-index: 0;
}

.car_img {
  position: absolute;
}

.cell1 .car_img {
  width: 517.31rem;
  height: 305.26rem;
  left: 50%;
  transform: translateX(-50%);
}

.car_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.model_description {
  position: absolute;
  left: 0;
  bottom: 0;
  width: fit-content;
  padding: 40rem 50rem;
  background: #fff;
}

.model_description .text_group {
  margin-bottom: 26rem;
}

/* .model_description::after {
  position: absolute;
  content: "";
  background: #000;
  width: 308.6rem;
  height: 4rem;
  left: 52.61rem;
  bottom: 38.89rem;
} */

.car_sep {
  width: 100%;
  height: 5px;
  background: #000;
}

.price {
  font-size: 20rem;
}

.cell3 .car_img {
  height: 100%;
  right: -50%;
  top: 0;
  transform: scaleX(-1);
}

#modelLine .btn {
  align-self: flex-start;
  float: left;
  margin-top: 58.85rem;
}

#services .block {
  height: 600rem;
  position: relative;
  width: 100%;
  font-weight: 600;
  text-transform: uppercase;
}

.block .bg-wrapper {
  z-index: 0;
}

.block2 {
  background: #005bf6;
}

.block4 {
  background: #2b2e33;
}

section {
  overflow: hidden;
}

.service_img {
  z-index: 5;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  transition: 0.6s ease-in-out;
  max-width: 400rem;
}

.block:hover .service_img {
  scale: 1.05;
}

.service_title {
  font-size: 81rem;
  font-weight: 700;
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: end;
  text-transform: uppercase;
  position: absolute;
  top: 90rem;
  left: 147.66rem;
}

.service_title .text_outline {
  font-weight: 600;
  -webkit-text-stroke: 1rem #fff;
  color: transparent;
  font-size: 82rem;
}

.block1 .service_title {
  font-size: 158rem;
}

.block1 .text_outline {
  margin-top: -70rem;
}

.service_name {
  position: absolute;
  font-size: 82rem;
  left: 143rem;
  top: 244rem;
  z-index: 10;
}

.block2 .text_outline {
  font-size: 158rem;
  margin-bottom: -70rem;
  z-index: 6;
}

.block2 .service_title {
  z-index: 2;
}

.disclaimer {
  position: absolute;
  bottom: 120rem;
  right: 151rem;
  width: 129rem;
  font-size: 12rem;
}

.disclaimer::before {
  content: "";
  width: 100%;
  height: 5pt;
  background: #fff;
  display: block;
  margin-bottom: 29rem;
}

.block .btn {
  position: absolute;
  bottom: 114.98rem;
  left: 147.66rem;
  font-size: 18rem;
}

.block:nth-child(even) .btn {
  left: revert;
  right: 143rem;
}

.block:nth-child(even) .disclaimer {
  right: revert;
  left: 143rem;
}

.block3 .service_title {
  top: 172.85rem;
  left: 147.65rem;
}

.block3 .service_name {
  left: 242.65rem;
}

.block3 .disclaimer {
  bottom: revert;
  top: 101.57rem;
  right: revert;
  left: 147.05rem;
}

.block3 .btn {
  color: #000;
  border-color: #000;
}

.block3 .service_img {
  left: revert;
  transform: revert;
  top: 117.84rem;
  right: 179.55rem;
  max-width: 444.4rem;
}

.block4 .service_title {
  top: 136.5rem;
  left: 147.17rem;
}

.block4 .service_name {
  left: 354.16rem;
  top: 198.5rem;
}

.news_grid {
  column-gap: 20rem;
  row-gap: 20rem;
  margin-top: 43.81rem;
}

.news_block {
  position: relative;
  padding: 58rem 60rem 45rem;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: flex-start;

  line-height: 1;
  font-size: 18rem;
  position: relative;
}

.news_block .news_date:after {
  content: "";
  width: 100%;
  height: 4pt;
  margin-top: 27rem;
  background: #000;
}

.news_img {
  width: 100%;
}

.news_img img {
  width: 100%;
  height: 100%;
}

.news_content {
  margin-top: 40rem;
}

.news_content h3 {
  margin-bottom: 20rem;
}
.news_content p {margin-bottom: 20rem;}
.news_date {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.link_to {
  cursor: pointer;
  position: absolute;
  inset: 0;
  z-index: 1;
}

.likes {
  display: flex;
  align-items: center;
}

.likes::before {
  content: "";
  background: url("/static/img/moto/icons/heart.svg") no-repeat;
  width: 21.83rem;
  height: 20rem;
  background-size: cover;
  margin-right: 10rem;
}

.post_data {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 33.95rem;
  border-top: 1pt rgba(255, 255, 255, 0.25) solid;
  margin-top: 30rem;
}

#instaSlider {
  margin-top: 56.66rem;
}

#instaSlider .swiper-slide {
  width: 390rem;
}

#instaSlider .swiper-slide img {
  width: 100%;
  height: 390rem;
}

#instaSlider .instagram::before {
  width: 20rem;
  height: 20rem;
  margin-right: 0;
}

.post_content {
  opacity: 0.45;
  margin: 0 auto;
  margin-top: 23.45rem;
  max-width: 350rem;
}

.footer {
  padding: 82.74rem 0 0;
}

.footer_nav {
  display: flex;
  color: #5d5d5d;
  font-size: 18rem;
}

.footer_nav .nav__menu {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex: 1;
  max-width: 70%;
}

.footer_nav .nav_link {
  flex: 1;
}

.subnav {
  display: flex;
  flex-direction: column;
  font-size: 14rem;
  margin-top: 15rem;
}

.footer .socials {
  filter: invert() brightness() grayscale();
  margin-left: auto;
  align-items: flex-start;
}

.footer .instagram::before {
  height: 20rem;
  width: 20rem;
}

.footer .youtube::before {
  width: 28rem;
  height: 20rem;
  margin-right: 0;
}

.footer .facebook::before {
  width: 10rem;
  height: 20rem;
}

.footer .instagram::before,
.footer .facebook::before {
  margin-right: 40rem;
}

.footer_panel {
  padding: 37rem 0;
  margin-top: 86.74rem;
}

.footer_panel .footer__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  column-gap: 35rem;
  row-gap: 40rem;
}

.life_a_ride {
  border-bottom: 4pt solid #000;
  padding-bottom: 13.14rem;
}


#specs .bg-wrapper {

  inset: revert;
  top: 0;
  left: 0;
  width: 100%;
}

#specs .border_top {
  border-top: 4pt solid #000;
  padding-top: 34.85rem;
  max-width: 327.86rem;
  text-wrap: stable;
  text-transform: uppercase;
}

#specs .section_header h2 {
  display: flex;
  flex-direction: column;
}

#specs .section_header h2 .text_outline {
  align-self: flex-end;
}

.specs_container {
  margin-top: 75.21rem;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  width: 100%;
  position: relative;
}

.spec {
  font-weight: 700;
  max-width: 160.45rem;
  text-transform: uppercase;
  font-size: 12rem;
}

.spec .big_num {
  font-size: 32rem;
  margin-bottom: 20.05rem;
  padding-bottom: 10rem;
  border-bottom: 1px solid #000;
  max-width: 159.55rem;
}

#specs .btn {
  border-color: #000;
  font-size: 18rem;
  font-weight: 600;
  margin-top: auto;
  padding: 18.14rem 36.89rem 15.86rem;
}

.spec_col {
  display: flex;
  flex-direction: column;
  gap: 30.17rem;
}

.spec_col:last-child {
  align-items: end;
  text-align: end;
}

.ellipse_light {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
}

.model_img {
  position: absolute;
  z-index: 3;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
  width: 1100rem;
  height: 780rem;
}

.model_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#specs .model_name {
  position: absolute;
  left: 301rem;
  top: 0;
  z-index: 1;
  font-size: 150rem;
  max-width: 800rem;
  line-height: 120rem;
  text-wrap: balance;
}

#specs .series {
  left: -10%;
  bottom: -12%;
  line-height: 1;
}
.spec_col .text {
  font-size: 14rem;
}
.section_name {
  font-size: 50rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 57rem;
  display: block;
  z-index: 2;
  position: relative;
}

.sort {
  position: relative;
  display: flex;
  align-items: baseline;
}

.sort ul {
  list-style-type: none;
  border-radius: 20rem;
  position: absolute;
  left: 20.5rem;
  transition: 0.4s ease;
  width: max-content;
  padding: 0 20rem 10rem;
  z-index: 99;
}

.filters {
  display: flex;
  align-items: center;
  gap: 19.7rem;
}

.filters::before {
  content: "";
  background: url("/static/img/moto/icons/filter.svg") no-repeat;
  background-size: cover;
  display: block;
  width: 15.04rem;
  height: 15rem;
}

.stocklocator_panel {
  display: flex;
  justify-content: space-between;
  font-size: 18rem;
  margin-top: 33.95rem;
}

.filter_sort_container {
  display: flex;
  gap: 18rem;
  font-weight: 700;
  text-transform: uppercase;
}

.sort::before {
  content: url("/static/img/moto/icons/sort.svg");
  float: left;
  display: block;
}

.stock_count {
  color: #5d5d5d;
}

.sort li {
  display: none;
  cursor: pointer;
}

.sort li.active {
  display: block;
}

.sort:hover ul {
  background: #f2f2f2;
}

.sort:hover li {
  display: block;
}
#specs {padding-bottom: 0;}
#specs .section_name {
  position: absolute;
  max-width: 320rem;
  top: 0;
  right: 433rem;
}

.specs_tab {
  margin-top: 270rem;
  font-size: 18rem;
  column-count: 3;
  column-gap: 60rem;
}

.specs_tab h3 {
  padding-right: 109rem;
  margin-right: 104.15rem;
  border-right: 1pt solid #000;
  font-weight: 400;
}

.specs_tab .text {
  max-width: 445rem;
  margin-right: 106rem;
}

.specs_tab .text:last-child {
  margin: 0;
}

.section_divider {
  height: 500rem;
  width: 100%;
  position: relative;
}

.goBack {
  font-weight: 700;
  text-transform: uppercase;
}

.goBack::before {
  content: "";
  background: url("/static/img/moto/icons/arrow_back.svg") no-repeat;
  background-size: cover;
  width: 46rem;
  height: 16rem;
  float: left;
  margin-right: 39.5rem;
}

.container-sm {
  padding: 48.8rem 0 121rem;
  position: relative;
}

.stock_container {
  display: flex;
  align-items: flex-start;
  gap: 152.37rem;
  margin-top: 35.58rem;
}

.stock_container .crumbs {
  padding-bottom: 28rem;
  border-bottom: 5pt #000 solid;
}

.stock_container .col:last-child {
  flex-grow: 1;
}

.chars {
  color: #5d5d5d;
  font-size: 18rem;
}

.row {
  display: flex;
  align-items: flex-start;
}

.chars .row {
  justify-content: space-between;
}

.line {
  flex-grow: 1;
  flex-shrink: 0;
  position: relative;
}

.line::before {
  content: "";
  width: calc(100% - 12rem);
  height: 1pt;
  background: #5d5d5d;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 5rem;
}

.modelSlider {
  max-width: 800rem;
  max-height: 510rem;
  overflow: hidden;
  background: #fff;
  position: relative;
}

.thumbsPreview {
  margin-top: 10rem;
  max-width: 800rem;
}

.thumbsPreview .swiper-slide {
  background: #fff;
  max-width: 193.38rem;
  margin-right: 10rem;
  padding: 17rem 11.83rem 19.55rem 22.31rem;
}

.modelSlider .swiper-slide {
  padding: 70.49rem 50.49rem 78.96rem 92.11rem;
}

.benefit {
  display: flex;
  flex-direction: column;
  height: auto;
}

.benefit::after {
  content: "";
  width: 100%;
  display: block;
  height: 5px;
  background: #919191;
  margin-top: auto;
}

.benefit h3 {
  line-height: 1.1;
  text-transform: uppercase;
  margin: 49.42rem 0 31.97rem;
}

.benefit3 h3,
.benefit4 h3,
.benefit5 h3 {
  line-height: 1.1;
  text-transform: uppercase;
  margin: 64.23rem 0 29rem;
}

.benefit img {
  width: 100%;
  height: auto;
}

.benefit .text {
  font-size: 18rem;
  margin-bottom: 45.09rem;
}

.benefits_container {
  margin-top: 87.76rem;
  column-gap: 80.35rem;
}

#benefits .grid-3 {
  column-gap: 67.42rem;

}

.benefits_slider {
  margin-top: 60.67rem;
}

.gallery_container {
  column-gap: 19.48rem;
  margin-top: 49rem;
  display: flex;
}

.gallery_container .swiper-slide {
  display: flex;
  height: auto;
}

.gallery_container img {
  width: 100%;
  height: 100%;
  flex: 1;
  flex-shrink: 0;
}

.gallery_container .col {
  display: flex;
  flex-direction: column;
  row-gap: 19.47rem;
}

.photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.photo {
  flex: 1;
}

#stockSlider {
  margin-top: 48.16rem;
}

#stockSlider .stockSlide {
  width: 390rem;
  padding: 34rem 37rem 46.8rem 37rem;
  background: #fff;
}

.stock_grid {
  margin-top: 54rem;
  gap: 20rem;
}

.stock_grid .stockSlide {
  padding: 34rem 37rem 46.8rem 37rem;
  background: #fff;
  width: 390rem;
  color: #000;
}

.nested-slider {
  position: relative;
  overflow: hidden;
}

.nested-slider .swiper-pagination {
  text-align: start;
  bottom: 0;
}

.nested-slider .swiper-pagination-bullet {
  border-radius: 0;
  margin: 0 !important;
  width: 63.16rem;
  height: 2rem;
  margin-right: 5.26rem !important;
}

.information {
  margin: 33rem 0;
}

.stockSlide .btn {
  padding: 9rem 17.68rem 11rem;
  float: left;
  margin-top: 14rem;
  border: 1px #000 solid;
  color: #000;
}

.price {
  color: #0062ff;
  font-weight: 700;
}

.stockSlide h4 {
  font-weight: 400;
  margin: 2rem 0;
}

.stockSlide .chars,
.warn {
  color: #5d5d5d;
}

.section_footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 37rem;
}

.section_footer .warn {
  max-width: 795.45rem;
  text-align: right;
}

.old_price {
  font-weight: 400;
  text-decoration: line-through;
  margin-left: 19rem;
  font-size: 14rem;
}

.common-form {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 30rem;
  margin-top: 30rem;
  column-gap: 50rem;
}

.form_container {
  flex: 1;
  padding-left: 16vw;
}

.checkbox,
.radio {
  display: inline-flex;
  align-items: center;
  font-size: 14rem;
}

.form-checkbox {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.form-checkbox+label {
  display: inline-flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  align-items: center;
}

.form-checkbox+label::before {
  content: "";
  display: inline-block;
  width: 30rem;
  height: 30rem;
  border-radius: 2px;
  flex-shrink: 0;
  flex-grow: 0;
  border: 1px solid #adb5bd;
  margin-right: 20rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

.form-checkbox:not(:disabled):active+label::before {
  background-color: #0062ff;
  border-color: #0062ff;
}

.form-checkbox:checked+label::before {
  border-color: #0062ff;
  background-color: #0062ff;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTEiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuNjc5IDQuNjg2bC0uOTUzLjkzLS40NzYuNDY1TDQuNzc0IDEwLjVsOC44MS04LjYwNUwxMi4xNTMuNWwtNy4zOCA3LjIxLTMuMDk1LTMuMDI0eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
}

.form-checkbox:disabled+label::before {
  background-color: #fff;
}

.radio label {
  margin-left: 10rem;
  cursor: pointer;
}

.form-row {
  position: relative;
  min-height: 55rem;
}

.form-label {
  display: block;
  color: #8e8e8e;
}


.form-field {
  width: 100%;
  border: 0;
  border-bottom: 1px solid #000;
  font-size: 18rem;
  color: #000;
  background: none;
  padding: 8rem 0 16rem;
  outline: none;
  font-family: "Motorrad";
}

.error .form-field {
  border-color: #f50537;
}

.errorMessage {
  color: #f50537;
  font-size: 14px;
  margin-top: 10px;
}

.form-msg {
  padding: 0;
  height: 28rem;
  line-height: 4rem;
  background-image: linear-gradient(transparent,
      transparent calc(4rem - 1px),
      #000 0px);
  background-size: 100% 4rem;
}

.form-msg.form-msg-sm {
  height: 12rem;
}

.form-btn {
  width: 100%;
  color: #fff;
  background-color: #0062ff;
  font-size: 15px;
  padding: 27rem 0;
}

.btn_blue {
  color: #fff;
  background: #0062ff;
  font-weight: 700;
  border: none;
}

.man_year {
  margin: 28rem 0;
}

.stock_container .price {
  font-size: 50rem;
  display: flex;
  align-items: baseline;
  margin: 40rem 0 17.79rem;
}

.warning {
  color: #5d5d5d;
  display: flex;
  margin-top: 25rem;
  line-height: 22rem;
}

.text_center {
  text-align: center;
  text-transform: uppercase;
}

.warning::before {
  content: "*";
  margin-right: 23rem;
}

#stock_single .price h4 {
  font-size: 24rem;
}

.form_container .tabs__select {
  font-size: 18rem;
  border-color: #000;
  margin-bottom: 60rem;
  width: fit-content;
}

.form_container .tabs__select::after {
  background-color: #000;
}

.form_container .tab.active::after {
  background: #000;
  height: 4pt;
}

#site_search {
  background: transparent;
  outline: none;
  border: none;
  border-bottom: 1pt #fff solid;
  color: #fff;
  font-size: 14rem;
  appearance: none;
  display: none;
}

.form_img {
  position: absolute;
  left: -35vw;
  bottom: 0;
  height: 90%;
  width: 55%;
  z-index: 0;
  pointer-events: none;
}

.form_img img {
  width: 100%;
  height: 100%;
  object-position: right;
  object-fit: contain;
}

.pageUp {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 34rem 0;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 20rem;
  cursor: pointer;
}

.pageUp::before {
  content: "";
  width: 15rem;
  height: 9.25rem;
  background: url("/static/img/moto/icons/arrow.svg") no-repeat;
  rotate: -180deg;
  margin-right: 15.9rem;
  background-size: cover;
  filter: brightness(0);
}

.pageUp[bg="dark"]::before {
  filter: none;
}

.hidden {
  display: none;
}

.mob {
  display: none;
}

.burger_menu {
  display: none;
}

.crumbs {
  text-transform: uppercase;
  position: relative;
}

.crumb_separator {
  margin: 0 20rem;
}

.crumb_separator::before {
  content: "/";
}

.pagination {
  display: flex;
  font-size: 18rem;
  justify-content: center;
  align-items: center;
  gap: 71rem;
  margin-top: 71.22rem;
  font-weight: 700;
}

#page-links-container {
  display: flex;
  align-items: center;
  gap: 1.2em;
}

.pagination .prev,
.pagination .next {
  outline: none;
  border: 1pt solid #000;
  width: 45rem;
  height: 45rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.page-link.active {
  border-bottom: 2pt solid #000;
}

.page-link {
  cursor: pointer;
}

.prev-link img {
  transform: scaleX(-1);
}

.content-sm {
  max-width: 1095rem;
  margin: 0 auto;
  padding: 0 20rem;
}

#news_single #otherNews .content {
  max-width: 1740rem;
}

#news_single #otherNews h3 {
  text-align: center;
  text-transform: uppercase;
}

#news_single #otherNews .news_grid {
  color: #000;
}

#news_single #otherNews .news_grid h3 {
  text-align: start;
}

#news_single .crumbs .news_date,
.note {
  position: absolute;
  top: 4rem;
  left: -136rem;
  width: fit-content;
  border-top: 4pt solid #000;
  padding-top: 20rem;
}

#finance .crumbs,
#insurance .crumbs {
  position: static;
}

.insurance_block {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 50%;
  align-items: center;
  justify-content: flex-end;
  padding-bottom: 103rem;
  gap: 30rem;
}

.insurance_block:last-of-type {
  gap: 50rem;
}

[color="light"] .note {
  border-color: #fff;
}

.insurance_block .note {
  max-width: 195rem;
  font-weight: 700;
  left: 255rem;
}

.insurance_block .btn,
.insurance_img {
  width: 450rem;
}

.insurance_img img {
  width: 100%;
}

.image_row {
  display: flex;
  height: 500rem;
  width: 100%;
}

.note {
  text-transform: uppercase;
  max-width: 135px;
  width: fit-content;
  left: 150rem;
  top: 105rem;
}

#news_single .crumbs,
.crumbs.border_bot {
  border-bottom: 3pt #000 solid;
  padding-bottom: 40rem;
  margin-bottom: 40rem;
}

#news_single .crumbs .section_name {
  margin-top: 10rem;
}

#news_single .container:first-child {
  padding-bottom: 105rem;
}

.news_announce {
  font-size: 24rem;
}

#news_single .text img {
  width: 100%;
}

#news_single .text p:first-of-type:first-letter {
  font-weight: 700;
  font-size: 82rem;
  float: left;
  padding: 0;
  line-height: 0.7;
  margin-right: 10rem;
}

.news_slider {
  position: relative;
  margin-bottom: 62.2rem;
}

.news_slider .swiper-wrapper {}

#news_single .quote {
  margin: 0;
  padding: 90rem 0 87rem;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 98rem;
}

.full-width {
  min-width: 100vw;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 93rem;
  margin-top: 60rem;
}

.full-width:last-child {
  margin-bottom: 0;
}

.text p:not(:last-child) {
  margin-bottom: 40rem;
}

.text h3,
.text h4 {
  margin-bottom: 35rem;
}



#model_page .container:has(.form_img) {
  padding-top: 102rem;
}

.text h3:first-child {
  margin-bottom: 40rem;
}

.warning_note {
  padding-top: 58rem;
  color: #000;
  flex-direction: column;
  border-top: 1pt #000 solid;
  margin-bottom: 88.94rem;
  gap: 32.33rem;
  display: flex;
}

.warning_note strong::before,
.warning_note img {
  content: "";
  background: url("/static/img/moto/icons/star.svg");
  background-size: cover;
  width: 26.28rem;
  height: 25.52rem;
  display: block;
  float: left;
  margin-right: 10rem;
  vertical-align: middle;
}

.warning_note img {
  margin-right: 34.5rem;
}

.warning_note strong:first-child:before {
  opacity: 0.25;
}

.warning_note::before {
  content: none;
}

.text .img_container {
  margin-bottom: 100rem;
}

.img_container {
  display: flex;
  width: 100%;
  gap: 18.93rem;
  flex-wrap: nowrap;
}

.img_container img,
.img_container-big img {
  flex-grow: 1;
  object-fit: revert;
  max-width: 50%;
}

.img_container img:only-child,
.img_container-big img:only-child {
  max-width: 100%;
}

.img_container-big {
  min-width: calc(100vw - 300rem);
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  gap: 20rem;
  margin-top: 60rem;
}

#news_single .text h4 {
  font-weight: 400;
}

#news_single p:last-child {
  margin-bottom: 40rem;
}

.text_uppercase {
  text-transform: uppercase;
}

.page_description .btn,
.text .btn {
  align-self: flex-start;
  font-size: 14rem;
  padding: 9.5rem 28.5rem 10.5rem;
  margin-top: auto;
  width: 210rem;
  white-space: nowrap;
}

.share {
  padding-top: 46.13rem;
  border-top: 3pt solid #000;
  display: flex;
  align-items: center;
  gap: 22.5rem;
}

.share .socials {
  gap: 16.12rem;
}

.whatsapp::before {
  content: "";
  background: url("/static/img/moto/icons/whats.jpg") no-repeat;
  background-size: cover;
  width: 78.91rem;
  height: 57.68rem;
  display: block;
}

.telegram::before {
  content: "";
  background: url("/static/img/moto/icons/tg.jpg") no-repeat;
  background-size: cover;
  width: 78.91rem;
  height: 57.68rem;
  display: block;
}

.vk::before {
  content: "";
  background: url("/static/img/moto/icons/vk.jpg") no-repeat;
  background-size: cover;
  width: 78.91rem;
  height: 57.68rem;
  display: block;
}

.text ol,
.text ul {
  list-style-position: inside;
  margin-top: -22rem;
  margin-bottom: 41.99rem;
  list-style-type: none;
  counter-reset: item;
}

.text ol li::before {
  content: counter(item) ". ";
  counter-increment: item;
  margin-right: 24rem;
}

.text ul li::before {
  content: "•";
  margin-right: 24rem;
}

.text li:not(:last-child) {
  margin-bottom: 1.33em;
}

.author {
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 150rem;
  text-transform: uppercase;
  font-size: 12rem;
  top: 104rem;
}

.author strong {
  border-top: 1pt #000 solid;
  margin-top: 20rem;
  padding-top: 20rem;
}

.author::before {
  content: "";
  background: url("/static/img/moto/icons/quote.svg") no-repeat;
  background-size: contain;
  width: 40.63rem;
  height: 32.08rem;
}

#news_single p.quote .content {
  display: inline-block;
}

#news_single img {
  margin-bottom: 75.06rem;
}

#news_single .news_slider img {
  margin-bottom: 0;
}

#news_single p {
  margin-bottom: 65rem;
}

#news_single h4 {
  margin-bottom: 65rem;
}

.swiper-button-next,
.swiper-button-prev {
  top: 50%;
  transform: translateY(-50%);
  color: #000;
  background: #fff;
  width: 45rem;
  height: 45rem;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  /* content: "";
  background: url("/static/img/moto/chevron.svg") no-repeat;
  background-size: cover;
  width: 11.8rem;
  height: 18rem; */
  font-size: 20px;
}

.modelSlider .swiper-button-next,
.modelSlider .swiper-button-prev {
  border: 2pt #000 solid;
}



.swiper-button-prev {
  left: 0;
}

.swiper-button-next {
  right: 0;
}

.photo_note {
  font-weight: 700;
  font-size: 12rem;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  max-width: 140px;
  position: absolute;
  bottom: 0;
  right: -150rem;
  text-align: right;
}

.photo_note::before {
  content: url(/static/img/icons/star.svg);
  border-bottom: 1pt solid #000;
  width: 100%;
  padding-bottom: 20rem;
  margin-bottom: 20rem;
}

.custom_pagination {
  font-size: 12rem;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 0;
  left: -250rem;
  gap: 20rem;
  max-width: 135rem;
}

.custom_pagination .swiper-pagination {
  font-size: 50rem;
  text-align: left;
  display: block;
  position: static;
  padding-bottom: 20rem;
  border-bottom: 1pt solid #000;
}

#service_form .page_header .text_outline {
  transform: translateX(20%);
}

#side_parts .container:last-child {
  padding-top: 0;
}

.finance_conditions .grid-3 {
  column-gap: 136rem;
}

.finance_conditions .col {
  /* padding: 0 150rem; */
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: column;
}

.finance_conditions .col:first-child h3 {
  margin-top: 37rem;
}

.finance_conditions .col:first-child ul {
  margin-top: 0;
  margin-bottom: 0;
}

.finance_conditions .col:last-child {}

.finance_conditions .col:nth-child(2) {
  border-right: 1px solid;
  border-left: 1px solid;
  border-color: #6f6f6f;

  padding-left: 147rem;
  padding-right: 150rem;
}

.finance_conditions .col p {
  margin-bottom: 0;
}

.text {
  font-size: 18rem;
}

.text .finance_num {
  text-transform: uppercase;
  font-size: 12rem;
}

.text .finance_num h3 {
  margin-bottom: 10rem;
  padding-bottom: 10rem;
  border-bottom: 1px solid #6f6f6f;
}

.text li {
  display: flex;
  align-items: flex-start;
}

#insurance .tab.active::after {
  background: #000;
}

#insurance .tabs__select {
  margin-bottom: 60rem;
}

.insurance_btn_container {
  display: flex;
  align-items: center;
  margin-top: 35rem;
}

.insurance_btn_container a:last-child:not(:only-child) {
  border-left: 1px #000 solid;
  margin-left: 10rem;
  padding-left: 22rem;
}

.insurance_container {
  border-top: 1pt #000 solid;
  padding-top: 50rem;
  margin-top: 53rem;
}

.bullet_point {
  display: flex;
  align-items: center;
  text-transform: uppercase;
  margin-top: 54rem;
  font-weight: 700;
  width: 95%;
}

.bullet_point::before {
  content: "";
  width: 5rem;
  height: 5rem;
  background: #000;
  display: block;
  margin-right: 35rem;
}

.dealers_panel {
  padding: 18rem 0;
}

.dealers_panel .content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.dealers_container {
  display: flex;
}

#map {
  height: 850rem;
  max-height: 75vh;
  flex: 1;
}

.dealers_list {
  padding: 56rem 80rem 56rem 100rem;
  overflow-x: hidden;
  overflow-y: scroll;
  font-size: 18rem;
  text-wrap: balance;
  max-height: 75vh;
  max-width: 32%;
  min-width: 300px;
}

.dealers_list .dealer:not(:last-child) {
  margin-bottom: 56rem;
}

.dealer_name {
  padding-bottom: 27rem;
  border-bottom: 1px #000 solid;
  display: flex;
  align-items: center;
  gap: 27rem;
}

.dealer_num {
  position: relative;
  width: 37rem;
  height: 48rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("/static/img/moto/icons/placemark.svg") no-repeat;
  background-position: 50% 100%;
}

.dealer .data {
  display: flex;
  flex-direction: column;
  margin-top: 27rem;
  margin-bottom: 40rem;
  gap: 20rem;
}

.dealer .data .row {}

#models .container {
  padding-top: 40rem;
}

.dealer .data .col {
  display: flex;
  flex-direction: column;
  gap: 27rem;
}

.dealer .label {
  min-width: 110rem;
  margin-right: 20rem;
}

.dealer .data .value {
  max-width: 70%;
}

.btn_dark {
  background: #000;
  color: #fff;
}

.dealer .btn {
  font-size: 14rem;
  padding: 12.5rem 25.55rem;
  white-space: nowrap;
}

.dealer .warning {
  font-size: 14rem;
}

.dealers_list::-webkit-scrollbar {
  width: 8px;
}

.dealers_list::-webkit-scrollbar-thumb {
  background-color: #e0e0e0;
  border-radius: 6px;
}

.dealers_list::-webkit-scrollbar-thumb:hover {
  background-color: #555;
}

.dealers_list::-webkit-scrollbar-track {
  background-color: transparent;
}

.cars .grid {
  column-gap: 10rem;
  row-gap: 33rem;
  margin: 60rem 0;
}

.cars .tabs__select {
  margin-bottom: 60rem;
  width: fit-content;
  font-size: 18rem;
}

.cars .text-lg {
  margin-top: 20rem;
}

.cars .item img {
  width: 80%;
  object-fit: contain;
}

.cars .dropdown__menu {
  left: 0;
  width: 100%;

}

.cars .content {
  display: block;
  width: 100%;
}

.sep {
  margin: 0 8rem;
}

@media screen and (max-width: 1000px) {
  html {
    font-size: var(--font-size-mobile);
  }
  .section_header .text p {font-size: 14rem;}
  body {
    font-size: 12rem;
  }

  .mob {
    display: flex;
  }

  .content,
  .content-sm {
    max-width: 100%;
  }

  .header {
    font-size: 12rem;
    display: flex;
    flex-direction: column-reverse;
    height: 100vh;
    justify-content: start;
  }

  .header .content {
    flex-wrap: wrap;
  }

  .cell1 .car_img {
    width: 100%;
  }

  .nav__links {
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
    gap: 20rem;
    order: 2;
  }

  .header_top {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    order: 1;
  }


  .header .content {
    gap: 20rem;
    margin: 0;
    padding-top: 16.76rem;
    padding-bottom: 16.24rem;
    overflow-y: scroll;
  }

  .header .dropdown__menu .content {
    padding: 0;
  }

  .header_panel {
    background: #fff;
    color: #000;
  }

  .header_panel .content {
    flex-direction: column-reverse;
    align-items: flex-start;
  }

  h1,
  .block1 .service_title,
  .block2 .text_outline {
    font-size: 40rem;
    font-weight: 700;
  }

  h2,
  .service_title .text_outline,
  .service_name,
  .block1 .service_title {
    font-size: 32rem;
    text-transform: uppercase;
    line-height: normal;
  }

  .cell h2 {
    line-height: 1;
    text-align: right;
  }

  .car_img {
    position: static;
    width: 100%;
  }

  .header_panel {
    font-size: 16rem;
  }

  .car_img img {
    transform: translateY(-20rem);
  }

  .footer {
    padding: 40rem 0 0;
  }

  .footer_nav .nav__menu {
    flex-wrap: wrap;
    row-gap: 5rem;
    max-width: 100%;
    column-gap: 25rem;
    flex-direction: column;
  }

  .footer_panel .footer__info {
    flex-wrap: wrap;
    row-gap: 20rem;
    column-gap: 30rem;
  }

  .text {
    font-size: 14rem;
  }

  .page_description .btn,
  .text .btn {
    font-size: 10rem;
  }

  h3 {
    font-size: 16rem;
  }

  h4 {
    font-size: 14rem;
  }

  .stock_link {
    font-size: 16rem;
    padding: 16rem 0;
  }

  .stock_link a {
    gap: 8rem;
  }

  .stock_link a::before {
    width: 35rem;
    height: 23rem;
    object-fit: cover;
  }


  .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12.5rem 26.5rem;
    font-weight: 700;
    cursor: pointer;
    text-transform: uppercase;
  }

  .main_banner .content {
    width: 100%;
  }

  .pc {
    display: none;
  }

  .main_banner {
    min-height: 200px;
    height: 125vw;
  }

  .section_header {
    flex-direction: column;
    align-items: flex-start;
    gap: 30rem;
    font-size: 14rem;
    margin-bottom: 50rem;
  }

  .section_header .text {
    max-width: 100%;
  }

  .block2 .text_outline {
    margin-bottom: 0;
  }

  .container {
    padding: 40.8rem 0 52.4rem;
  }

  .tabs__select {
    width: 100%;
    gap: 1.66em;
  }

  .model_panel.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
  }
  .cars .dropdown__menu {
    margin-top: 10rem;
  }
  .grid-5,
  .grid-2,
  .grid-6,
  #benefits .grid-3,
  .grid-3,
  .grid-4 {
    grid-template-columns: repeat(1, 1fr);
  }

  #benefits .grid-3 {
    margin-top: 25rem;
  }

  #mainModelsSlider {
    height: revert;
  }

  .car_chunk {
    flex-direction: column;
  }

  .car_chunk:not(:first-child) {
    margin-top: 20rem;
  }

  .car_chunk .row {
    flex-direction: column;
  }

  #stock_single .section_footer .btn {
    align-self: center;
    margin: 0 auto;
  }

  .cell {
    grid-area: revert;
    padding: 30rem 20rem;
    height: 350rem;
    max-height: revert;
    flex: revert;
    width: 100%;
  }

  .cell1 {
    min-height: revert;
  }

  .cell h2 {
    font-size: 24rem;
  }

  .stock_grid {
    grid-template-columns: repeat(4, 1fr);
    overflow-x: auto;
  }

  .stock_grid .stockSlide {
    width: 290rem;
  }

  .series {
    font-size: 12rem;
    rotate: 0deg;
    position: static;
    transform: translate(0);
    margin-top: 0;
    margin-left: 2rem;
  }

  .model_description {
    padding: 30rem 25rem;
    height: 130.12rem;
  }

  .cell .model_description {
    width: fit-content;
  }

  .model_description::after {
    left: 25rem;
    width: calc(100% - 50rem);
    bottom: 15rem;
  }

  .cell .text p,
  .price,
  .model_panel {
    font-size: 14rem;
  }

  #modelLine .btn {
    align-self: flex-start;
    float: left;
    margin-top: 35.85rem;
  }

  #services .block {
    height: 340rem;
  }

  .block1 .text_outline {
    margin-top: -17rem;
  }

  .block .service_img {
    left: 50%;
    top: 50%;
    right: revert;
    transform: translate(-50%, -50%);
    width: 80%;
  }

  .service_title {
    left: 50%;
    top: 20%;
    right: revert;
    transform: translate(-50%, -50%);
  }

  .nav__item {
    padding: 10rem 0;
    width: 100%;
    font-size: 16rem;
  }

  .dropdown__link::after {
    margin-left: auto;
  }

  .nav__links {
    gap: 0;
  }

  .dropdown__link {
    width: 100%;
  }

  .lang_container .dropdown__link::after {
    content: "|";
    background: none;
    width: revert;
    height: revert;
    margin: 0 10rem;
  }

  .cars .tabs__select {
    width: 100%;
    max-width: 420px;
    font-size: 14rem;
    margin-bottom: 24rem;
  }

  .cars h2 {
    margin-top: 40rem;
    font-size: 24rem;
  }

  .cars .grid {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20rem 10rem;
    margin: 20rem 0;
  }

  .cars .item img {
    width: 100%;
    display: block;
    margin: auto;
  }

  .dropdown__menu {
    position: relative;
    padding: 10rem 0;
    box-shadow: none;
    transform: none;
  }

  .block .btn {
    left: 20rem;
    bottom: 30rem;
    font-size: 14rem;
  }

  .block:nth-child(even) .btn {
    right: 20rem;
    z-index: 10;
  }

  .block:nth-child(even) .disclaimer {
    left: 20rem;
  }

  .disclaimer {
    right: 20rem;
    bottom: 30rem;
    font-size: 8rem;
  }

  .block3 .disclaimer {
    right: 20rem;
    top: 30rem;
    left: revert;
    right: 20rem;
  }

  .disclaimer::before {
    margin-bottom: 10rem;
  }

  .news_grid {
    overflow-x: auto;
    grid-template-columns: repeat(3, 1fr);
  }

  #news_rubric .news_grid {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 35rem;
  }

  #pagination {
    display: none;
  }

  #news_rubric .container {
    padding-top: 80rem;
  }

  #news_rubric .news_grid .news_block {
    width: 100%;
  }

  #instaSlider .swiper-slide img {
    height: auto;
  }

  #model_page .container:has(.form_img) {
    padding-top: 48rem;
  }

  .service_name {
    left: 50%;
    transform: translateX(-50%);
    top: 148rem;
    white-space: nowrap;
  }

  .block3 .service_title,
  .block4 .service_title {
    top: 70.85rem;
    left: 20rem;
    transform: translate(0);
  }

  .block3 .service_name,
  .block4 .service_name {
    left: 128.65rem;
    transform: translate(0);
  }

  .block1 .service_title {
    top: 40%;
    left: 50%;
    white-space: nowrap;
    transform: translate(-50%, -50%);
  }

  .news_block {
    padding: 30rem 20rem;
    font-size: 14rem;
    width: 290rem;

  }

  .footer_nav {
    flex-direction: column;
    row-gap: 20rem;
    column-gap: 40rem;
  }

  .footer .instagram::before,
  .footer .facebook::before {
    margin-right: 20rem;
  }

  .footer .socials {
    margin-left: auto;
  }

  .subnav {
    font-size: 14rem;
    margin-top: 10rem;
  }

  .motorrad_logo {
    padding-right: 10rem;
    border-right: #000000 1px solid;
    margin-right: 10rem;
    max-width: 120rem;
  }

  .bmw_mini_logo {
    gap: 12rem;
    align-items: center;
  }

  .bmw_mini_logo img {
    max-height: 24rem;
  }

  .model_panel .btn {
    font-size: 14rem;
    padding: 12.5rem 26.5rem;
  }

  .content .content-sm {
    padding: 0;
  }

  .img_container-big {
    overflow-x: auto;
  }

  .model_panel .content {
    flex-wrap: wrap;
    row-gap: 20rem;
    padding: 0 20rem;
  }

  .lang_select .dropdown__menu {
    display: block;
    padding: 0;
    background: none;
    color: #000;
    transform: none;
  }

  .model_panel .btn_container {
    overflow-x: scroll;
  }

  .model_panel .btn_container .btn {
    flex-shrink: 0;
  }

  #model_page .main_banner {
    height: 120vw;
  }

  .model_img {
    width: 100%;
    height: auto;
    position: relative;
    top: 0;
    left: 0;
    transform: translate(0);
    order: 1;
    margin: -50rem 0 50rem;
  }

  .banner_content {
    max-width: 100%;
  }

  #specs .model_name {
    font-size: 40rem;
    line-height: 30rem;
    position: static;
    margin-bottom: 30rem;
  }

  .specs_container {
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 30rem;
  }

  .banner_content .btn {
    min-width: revert;
  }

  .spec_col {
    order: 3;
    max-width: 44%;
  }

  .ellipse_light {
    display: none;
  }

  .burger_menu {
    display: flex;
    height: 100vh;
    width: 100vw;
    z-index: 888;
    background: #fff;
    position: fixed;
    top: 50rem;
    left: 0;
    flex-direction: column;
    transition: 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
    transform: translateX(100%);
  }

  .burger_menu.active {
    transform: translate(0);
  }

  .burger_menu .nav__links,
  .contact_links {
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20rem;
  }



  .burger_menu .content {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 40rem;
  }

  .close_menu {
    display: none;
  }

  .open_menu,
  .close_menu {
    width: 16rem;
    height: 11rem;
  }

  .lang_container ul {
    color: #000;
    background: transparent;
  }

  .spec .big_num {
    font-size: 20rem;
    max-width: 100%;
    line-height: 1;
  }


  .spec {
    max-width: 100%;
  }

  .specs_tab {
    font-size: 14px;
    margin-top: 40rem;
    flex-wrap: wrap;
    column-count: 1;
    margin-bottom: 30rem;
  }

  .spec_col:last-child {
    text-align: start;
    align-items: flex-start;
    margin-left: 12%;
  }

  .specs_tab h3 {
    padding-right: 0;
    margin-right: 0;
    max-width: revert;
    padding-bottom: 30rem;
    border-right: none;
    border-bottom: 1pt #000 solid;
  }

  .specs_tab .text {
    margin-right: 0;
    max-width: revert;
  }

  #specs .btn {
    border-color: #000;
    font-size: 12rem;
    font-weight: 600;
    margin-top: auto;
    margin-left: auto;
    padding: 10rem 15rem;
  }

  #specs .bg-wrapper {
    max-height: 45%;
    inset: 0;
  }

  .benefits_container {
    margin-top: 35rem;
    row-gap: 25rem;
  }

  .benefit {
    grid-area: revert;
    width: 100%;
  }

  .benefit .text {
    font-size: 14px;
  }

  .benefit h3 {
    margin: 15rem 0 30rem;
  }

  .photo {
    grid-area: revert;
    max-height: 190rem;
  }

  .photo img {
    max-height: 100%;
    width: 100%;
  }

  .gallery_container {
    row-gap: 10rem;
    column-gap: 5rem;
  }

  .stockSlide .stockSlide {
    padding: 30rem 20rem;
  }

  .nested-slider .swiper-pagination-bullet {
    border-radius: 0;
    margin: 0 !important;
    width: 20.16rem;
    height: 2rem;
    margin-right: 5.26rem !important;
  }


  .old_price {
    font-size: 10rem;
    margin-left: 10rem;
  }

  .stockSlide h4 {
    font-weight: 400;
    margin: 8rem 0;
  }

  .section_footer {
    flex-wrap: wrap;
    row-gap: 20rem;
  }

  .pageUp {
    font-size: 14rem;
  }

  .form_container {
    width: 100%;
    padding: 0 20rem;
  }

  .form_container .tabs__select,
  .checkbox,
  .radio,
  .form-field {
    font-size: 14rem;
  }

  .common-form {
    grid-template-columns: repeat(1, 1fr);
    row-gap: 16rem;
  }

  .form_img {
    opacity: 0.1;
    width: 100%;
  }

  .form_container .tabs__select {
    justify-content: normal;
    width: 100%;
  }

  .form-field {
    padding-bottom: 11rem;
  }

  .form-row {
    position: relative;
    min-height: 45rem;
  }

  .header .phone::before,
  .header .search::before,
  .header .map_button::before,
  .header .socials,
  .header .lang_select::after {
    filter: invert();
  }

  .icon-menu::before {
    content: "";
    background: url("/static/img/moto/icons/burger__menu.svg") no-repeat;
    width: 20rem;
    height: 16rem;
    background-size: cover;
  }

  .lang_select::after {
    top: 50%;
    transform: translateY(-50%);
    right: -15rem;
    width: 12rem;
    height: 6rem;
  }

  .nav__links {
    display: none;
  }

  .header_panel {
    display: none;
    order: 3;
    width: 100%;
  }



  .header {
    height: fit-content;
  }

  .header.active {
    height: 100vh;
    position: fixed;
  }

  .header_panel .content {
    padding: 0;
  }

  .noscroll {
    overflow: hidden;
  }

  .header.active .nav__links {
    display: flex;
  }

  .header.active .header_panel {
    display: flex;
  }

  .header.active .icon-menu::before {
    background: url("/static/img/moto/icons/cross.svg") no-repeat;
    background-size: cover;
  }

  .footer_panel .content {
    flex-wrap: wrap;
    row-gap: 28rem;
  }

  .footer_panel .lang_select::after {
    filter: invert();
  }

  .section_divider {
    height: 210rem;
  }

  .spec_col:first-of-type {
    margin-right: 10rem;
  }

  .dealers_container {
    flex-direction: column;
  }

  .dealers_list {
    display: flex;
    flex-direction: column;
    padding: 36rem 20rem 36rem;
    font-size: 12rem;
    height: fit-content;
    max-height: revert;
    width: 100%;
    max-width: 100%;
  }

  .dealers_list .btn_container .btn:not(:last-child) {
    margin-right: 0;
  }

  .dealer .data .value {
    width: 207.18rem;
  }

  .dealer .btn_container {
    flex-direction: column;
    gap: 10rem;
  }

  .dealer .btn {
    width: 100%;
    font-size: 12rem;
  }

  .btn_black {
    background: transparent;
    border: 1px #000 solid;
  }

  .dealer .data {
    display: flex;
    flex-direction: column;
    gap: 12rem;
    margin-top: 27rem;
    margin-bottom: 25.5rem;
  }

  .dealer .warning {
    font-size: 10rem;
  }

  .dealer_name {
    padding-bottom: 17rem;
    border-bottom: 1pt #000 solid;
    display: flex;
    align-items: center;
    gap: 12rem;
  }

  #map {
    height: 120vw;
    max-height: revert;
    width: 100%;
    flex: revert
  }

  .dealers_panel .content {
    flex-direction: column;
    gap: 15rem;
  }

  .dealers_panel .btn {
    margin-top: 0;
    align-self: center;
  }

  .image_row {
    flex-direction: column;
    height: revert;
  }

  .insurance_block {
    width: 100%;
    padding: 50rem 20rem;
  }

  .insurance_block .btn,
  .insurance_img {
    width: 100%;
  }

  .insurance_block .note {
    position: static;

    align-self: flex-start;
  }

  .note {
    position: static;
    margin-top: 20rem;
    width: 100%;
    max-width: 100%;
  }

  .text h3:first-child,
  .text h2,
  .text h3,
  .text h4 {
    margin-bottom: 20rem;
  }

  #insurance .tabs__select {
    margin-bottom: 40rem;
    justify-content: normal;
    gap: 2em;
  }

  .insurance_btn_container {
    margin-top: 15rem;
  }

  .text p {
    margin-bottom: 18rem;
  }

  .insurance_container {
    padding-top: 20rem;
    margin-top: 21rem;
  }

  .bullet_point {
    margin-top: 24rem;
  }

  .warning_note {
    padding-top: 28rem;

    margin-bottom: 38.94rem;
    gap: 17.33rem;
  }

  .section_name {
    line-height: 1;
    font-size: 24rem;
  }

  .content .form_container {
    padding: 0;
  }

  .crumbs .section_name {
    margin-top: 10rem;
  }

  .finance_conditions .grid-3 {
    row-gap: 45rem;
  }

  .service_img {
    top: revert;
    left: revert;
    transform: translate(0);
    position: relative;
    padding: 40rem;
  }

  #accessories .page_description {
    color: #000;
    border-color: #000;
  }

  #accessories .page_description .border_top {
    border-color: #000;
  }

  .finance_conditions .col:nth-child(2) {
    border: none;
    padding-left: 0;
    padding-right: 0;
  }

  .text .finance_num h3 {
    margin-bottom: 10rem;
  }

  .news_announce {
    font-size: 14rem;
  }


  .swiper-button-prev,
  .swiper-button-next {
    display: none;
  }

  #news_single .crumbs,
  .crumbs.border_bot {
    border-bottom: 3pt #000 solid;
    padding-bottom: 20rem;
    margin-bottom: 20rem;
  }

  .page_header .content {
    flex-direction: column;
  }

  .page_header .crumbs {
    max-width: 100%;
  }

  .page_description {
    padding-left: 20rem;
    max-width: 570rem;
    border-left: 1px #fff solid;
    font-size: 14rem;
    display: flex;
    flex-direction: column;
    margin-top: 40rem;
  }

  .page_description .btn {
    margin-top: 10rem;
  }

  .benefits_slider {
    margin-top: 45rem;
  }

  #stockSlider .stockSlide {
    padding: 30rem 20rem;
  }


  #specs {
    padding-bottom: 0;
  }

  #benefits {
    padding-top: 0;
  }

  .btn_blue {
    color: #fff;
    background: #0062ff;
    font-weight: 700;
    border: none;
  }

  .img_container {
    display: flex;
    width: 100%;
    align-items: flex-start;
    gap: 18.93rem;
    flex-wrap: wrap;
  }

  .full-width {
    min-width: 100vw;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 43rem;
    margin-top: 20rem;
  }

  .text .img_container {
    margin-bottom: 40rem;
  }

  .stock_container {
    flex-direction: column;
  }

  .modelSlider {
    max-width: 100%;
    max-height: 510rem;
    width: 100% !important;
  }

  .thumbsPreview {
    margin-top: 10rem;
    max-width: 100%;
    display: none;
  }

  .modelSlider .swiper-slide {
    max-width: 100%;
    width: 100% !important;
    padding: 30rem 20rem;
  }

  .swiper-button-next,
  .swiper-button-prev {
    top: 50%;
    transform: translateY(-50%);
    color: #000;
    background: #fff;
    width: 20rem;
    height: 20rem;
  }

  .swiper-button-prev::after,
  .swiper-button-next::after {
    content: "";
    background: url(/static/img/chevron.svg) no-repeat;
    background-size: cover;
    width: 5.8rem;
    height: 9rem;
  }

  .chars {
    font-size: 14px;
  }

  .chars_label {
    max-width: 51%;
  }

  .chars .row {
    align-items: flex-end;
  }

  .chars .row:not(:last-child) {
    margin-bottom: 14rem;
  }

  .stock_container {
    display: flex;
    align-items: flex-start;
    gap: 40.37rem;
    margin-top: 35.58rem;
  }

  .stock_container .price {
    font-size: 20rem;
    display: flex;
    align-items: baseline;
    margin: 40rem 0 17.79rem;
  }

  #stock_single .price h4 {
    font-size: 14rem;
  }

  .page_description .border_top {
    margin-top: 25rem;
  }

  .goBack::before {
    content: "";
    background: url(/static/img/icons/arrow_back.svg) no-repeat;
    background-size: contain;
    width: 46rem;
    height: 10rem;
    float: left;
    margin-right: 11.5rem;
  }

  .page_header .crumbs h2 {
    margin-top: 10rem;
  }

  #news_single .quote {
    margin: 0;
    padding: 90rem 0 87rem;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin-bottom: 30rem;
  }

  .author {
    position: static;
    order: 4;
    align-self: flex-end;
    margin-right: 20rem;
    margin-top: 30rem;
  }

  .form-btn {
    padding: 15rem 26.5rem;
  }

  .author strong {
    border-top: 1pt #000 solid;
    margin-top: 10rem;
    padding-top: 10rem;
  }

  .vk::before,
  .whatsapp::before,
  .telegram::before {
    width: 39.455rem;
    height: 28.84rem;
  }

  .share {
    padding-top: 26.13rem;
    border-top: 3pt solid #000;
    display: flex;
    align-items: center;
    gap: 12.5rem;
  }
}

@media screen and (max-width: 1440px) and (min-width: 1001px) {

  .author {
    display: flex;
    flex-direction: column;
    position: absolute;
    left: 15rem;
    text-transform: uppercase;
    font-size: 12rem;
    top: 104rem;
  }

  .note {
    text-transform: uppercase;
    max-width: 135px;
    width: fit-content;
    left: 10rem;
  }

  .custom_pagination {
    left: -150rem;
  }

  .wrapper {
    position: relative;
  }


}

.flex {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.pb-0 {
  padding-bottom: 0;
}

.pt-0 {
  padding-top: 0;
}

.full-width-row.form-row {
  grid-column: 1 / -1
}