@font-face {
  font-family: 'OENaPro-Light';
  src: url("./fonts/OENaPro-Light.ttf") format("truetype");
}

@font-face {
  font-family: 'OENaPro-Regular';
  src: url("./fonts/OENaPro-Regular.ttf") format("truetype");
}

@font-face {
  font-family: 'OENaPro-SemiBold';
  src: url("./fonts/OENaPro-SemiBold.ttf") format("truetype");
}

@font-face {
  font-family: 'OENaPro-Bold';
  src: url("./fonts/OENaPro-Bold.ttf") format("truetype");
}

@font-face {
  font-family: 'OENaPro-Heavy';
  src: url("./fonts/OENaPro-Heavy.ttf") format("truetype");
}

@font-face {
  font-family: 'regular';
  src: url("./fonts/MazdaType-Regular.ttf") format("truetype");
}

.error {
  outline: 1px solid #f73f3f;
}

.error::placeholder {
  color: #f73f3f;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: OE Na Pro_121, sans-serif;
  direction: rtl;
}

::-webkit-scrollbar {
  display: none;
}

::-webkit-input-placeholder {
  /* WebKit browsers */
  color: #000;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #000;
}

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #000;
}

:-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color: #000;
}

input::placeholder {
  color: #000;
}

.container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
  width: 100vw;
}

.img-info-container {
  position: relative;
  width: 100%;
}

.white-bg {
  background-color: #ffffff;
  width: 100%;
  padding: 0.5vw 0;
}

.hero-container {
  width: 70vw;
  height: 100vh;
  background-color: white;
  color: white;
}

.logo-2 {
  position: absolute;
  top: 1vw;
  left: 1vw;
  object-fit: contain;
  width: 5vw;
}

#backButton {
  background-color: #231f20;
}

.hero-desc {
  width: 50%;
  position: relative;
  bottom: 12vw;
  margin: 0 auto;
}

.hero-desc img {
  width: 100%;
}

.hero-info {
  position: absolute;
  bottom: 2vw;
  font-weight: normal;
  display: flex;
  justify-content: center;
  padding: 1vw 0;
  font-size: 2vw;
  text-align: center;
  width: 100%;
  color: #ffffff;
  background-color: #231f20;
}

.hero-image {
  width: 100%;
  height: calc(70vw* 1165 / 1863);
  object-fit: contain;
  background-size: 100%;
  background-image: url("./assets/desktop-bg.jpg?r=3");
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.hero-image::after {
  background: linear-gradient(to top, rgba(128, 128, 128, 1), rgba(128, 128, 128, 0));
}

.logo {
  width: 5vw;
  margin-top: 1vw;
}

.long-line {
  margin-top: 2vw;
  width: 32vw;
  height: 0.0001vw;
  border: 1px solid #f3f3f3;
  background-color: white;
  filter: drop-shadow(0 0 3px black);
}

.short-line {
  display: flex;
  width: 9vw;
  height: 0.0001vw;
  border: 1px solid #f3f3f3;
  background-color: white;
  filter: drop-shadow(0 0 3px black);
}

.text-1 {
  font-size: 3.8vw;
  filter: drop-shadow(1px 1px 3px black);
  font-family: 'OENaPro-Bold';
}

.text-2 {
  filter: drop-shadow(1px 1px 3px black);
  font-family: 'OENaPro-SemiBold';
  font-size: 2vw;
}

.text-3-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1vw;
}

.text-3 {
  filter: drop-shadow(1px 1px 3px black);
  font-size: 2vw;
  padding-bottom: 0.5vw;
  font-family: 'OENaPro-SemiBold';
}

.cars {
  display: flex;
  flex-direction: row;
  position: relative;
  top: -1.2vw;
}

.mazda-cx90 {
  display: flex;
  flex-direction: column;
  position: absolute;
  width: 30vw;
  right: 1vw;
  top: 3vw;
}

.mazda-cx5 {
  display: flex;
  flex-direction: column;
  position: absolute;
  width: 31vw;
  left: -16vw;
  top: 4vw;
  z-index: 1;
}

.mazda-3 {
  display: flex;
  flex-direction: column;
  position: absolute;
  width: 22vw;
  right: -30.5vw;
  top: 4vw;
  z-index: 0;
}

.info-container-1,
.info-container-2,
.info-container-3 {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.info-container-1 {
  margin-right: 9vw;
  margin-top: -1vw;
}

.info-container-3 {
  margin-top: 2vw;
}

.line-break-1,
.line-break-2,
.line-break-3 {
  position: relative;
  height: 1px;
  background: white;
  margin-bottom: 0.7vw;
}

/* base horizontal lines */
.line-break-1 {
  width: 9vw;
}

.line-break-2 {
  width: 9vw;
}

.line-break-3 {
  width: 6vw;
}

/* shared angled part */
.line-break-1::after,
.line-break-2::after,
.line-break-3::after {
  content: "";
  position: absolute;
  height: 1px;
  background: white;
  transform-origin: left center;
}

/* customize angled lengths + angles */
.line-break-1::after {
  width: 2.5vw;
  right: -2.5vw;
  transform: rotate(-75deg);
}

.line-break-2::after {
  width: 2.5vw;
  right: -2.5vw;
  transform: rotate(-75deg);
}

.line-break-3::after {
  width: 2vw;
  right: -2vw;
  transform: rotate(-75deg);
}

.car-title {
  font-size: 1.4vw;
  font-family: 'regular';
  line-height: 1;
}

.car-description {
  font-size: 1vw;
  font-family: 'OENaPro-Light';
  margin-bottom: 0.5vw;
  line-height: 1;
}

.price-after {
  font-family: 'OENaPro-Light';
  font-size: 1.3vw;
  line-height: 1;
}

.price {
  font-size: 1.9vw;
  line-height: 1;
  font-family: 'OENaPro-Light';
}

.price-before {
  font-family: 'OENaPro-Light';
  font-size: 1.3vw;
  position: relative;
}

.price-before::after {
  content: "";
  display: flex;
  position: absolute;
  left: 0vw;
  top: 1vw;
  width: 94%;
  height: 1px;
  background-color: red;
  transform: rotate(22deg);
}

.terms {
  font-size: 0.85vw;
  margin-top: 24.8vw;
}

.terms a {
  color: black;
  cursor: pointer;
}

.form-conainer {
  position: relative;
  width: 30vw;
  background-color: #e1e1e1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
}

#iframe-dialog {
  box-sizing: border-box;
  flex-direction: column;
  border: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  margin: auto;
  border: 0;
  border-radius: 12px;
}

.iframe-frame {
  width: 100%;
  height: 95%;
  border: none;
}

#form {
  display: none;
}

#welcome {
  display: flex;
}

.form-input {
  box-sizing: border-box;
  height: 2vw;
  width: 80%;
  border: 1px solid #d4d5d4;
  font-size: 1vw;
  font-weight: 300;
  color: #000;
  padding: 1.4vw 20px;
  margin-top: 0.75vw;
}

.dropdown select {
  width: 100%;
  font-size: 1vw;
  padding: 0.75vw 1.5vw;
  background-position: 1vw center;
  background-size: 1vw;
  border: none;
  background-color: white;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url(./assets/arrow_down.png);
  background-repeat: no-repeat;
}

.dropdown {
  width: 80%;
  border: 1px solid #ccc;
  border-bottom: none;
  margin-top: 0.75vw;
}

.form-input::placeholder {
  font-family: OE Na Pro_121, sans-serif;
}

label {
  display: none;
}

.form-title-container {
  width: 80%;
  display: flex;
  flex-direction: row;
  gap: 2.5vw;
}

.form-title-container a {
  background: #231f20;
  color: white;
  font-size: 1.6vw;
  padding: 0.3vw 1vw;
  text-decoration: none;
}

.form-main-title {
  font-size: 2vw;
}

.form-title {
  font-size: 1.6vw;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  font-family: OE Na Pro_121, sans-serif;
  padding: 0.3vw 1vw;
}

.title-q {
  padding-bottom: 0.3vw;
  padding-top: 2vw;
}

.form-button {
  box-sizing: border-box;
  height: 3.3vw;
  padding: 1.5vw 0;
  width: 80%;
  background-color: #231f20;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: none;
  text-decoration: none;
}

.form-button h1 {
  cursor: pointer;
  font-size: calc(1.4vw + 1px);
  font-weight: 500;
  font-style: normal;
  text-align: center;
  color: #ffffff;
}

.form-button1 {
  background-color: #231f20;
  border: none;
  display: flex;
  color: white;
  padding: 1.2vw 0.5vw;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 2vw;
  font-size: 1.3vw;
  width: 50%;
  margin-top: 2vw;
  gap: 0.5vw;
  cursor: pointer;
}

.form-button1 span {
  color: #9a0c0c;
}

.top-fish {
  position: relative;
  top: 5vw;
  left: 5vw;
  width: 25vw;
}

.bottom-fish {
  position: relative;
  width: 25vw;
  bottom: 10vw;
  left: -2vw;
}

.privacy {
  font-size: 0.96vw;
  padding-top: 1vw;
}

.terms-container {
  width: 80%;
  height: fit-content;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
  margin: 1vw 0;
}

.first-look {
  padding-top: 3vw !important;
  text-align: center;
}

.terms-container h1 {
  font-size: 0.85vw;
  font-weight: 500;
  color: #000;
  width: 90%;
  font-family: OE Na Pro_121, sans-serif;
}

.terms-container input {
  height: 2.2vw;
  width: 2.2vw;
  border: 1px solid #d4d5d4;
}

.terms-and-condition {
  font-size: 11px;
  font-weight: 300;
  font-style: normal;
  text-align: left;
  color: #8f8f8f;
  text-align: center;
  margin-bottom: 35px;
  margin-top: 10px;
}

.fill-box {
  height: 100%;
  width: 3vw;
}

.vertical-line {
  height: 90%;
  width: 5px;
  background-color: black;
}

.menu {
  overflow: hidden;
  cursor: grab;
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}

.menu.is-dragging {
  cursor: grabbing;
}

.menu--wrapper {
  counter-reset: count;
  display: flex;
  position: absolute;
  z-index: 1;
  height: 100%;
  top: 0;
  left: 0;
  width: 100%;
}

.menu--item {
  counter-increment: count;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 16vw;
  height: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.menu--item img {
  width: 16vw;
  object-fit: contain;
}

.menu--item h1 {
  font-size: calc(1vw + 1px);
  font-weight: 300;
}

.menu--item:nth-child(n + 10):before {
  content: counter(count);
}

.mazda-image {
  padding: 1vw 0 2vw 0;
  width: 6vw;
}

.strip {
  width: 31vw;
  bottom: 0;
  cursor: pointer;
  right: 10vw;
  padding-right: 1vw;
}

.thanks_message {
  padding: 4vw;
  font-size: 2.5vw;
}

.mobile_waze {
  display: none;
}

.hero-inner-container {
  position: relative;
}

#pollutionDialog {

  flex-direction: column;
  position: fixed;
  margin: auto;
  border: 0;
  border-radius: 12px;
}

.pt-10 {
  padding-top: 2vw;
}

#dialog_close_btn {
  user-select: none;
  width: fit-content;
  border: 0;
  cursor: pointer;
}

#close-iframe-dialog {
  cursor: pointer;
  border: 0;
  background: 0;
  padding: 1vw;
  width: fit-content;
  font-size: 0.2vw 1vw;
}

.image_container {
  width: 100%;
  height: 82vh;
  background-image: url(./assets/background.png);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  align-items: center;
}

.text_container {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 3vw;
  left: 19.5vw;
  text-align: center;
  color: white;
  line-height: 0.85;
  gap: 1vw;
}

.text1 {
  font-size: 3.5vw;
  font-weight: 300;
}

.text2 {
  font-size: 3.2vw;
}

.icons {
  object-fit: contain;
  width: 20vw;
  margin-top: 1vw;
}

.man {
  position: absolute;
  right: -1.5vw;
  bottom: 0;
  object-fit: contain;
  width: 33vw;
}

#pollutionDialog img {
  width: 64vw;
}

.links-container {
  display: flex;
  gap: 1vw;
  position: absolute;
  bottom: 0.25vw;
  width: 30vw;
  justify-content: space-evenly;
}

.links-container-2 {
  display: flex;
  flex-direction: column;
  position: absolute;
  bottom: 0.25vw;
  width: 30vw;
  justify-content: space-evenly;
}

.links-container-top {
  font-size: 1vw;
  text-align: center;
  padding-bottom: 1vw;
  padding: 0 1vw 1vw;
}

.links-container-top a {
  color: black;
}

.links-container-bottom {
  display: flex;
  align-self: center;
  ;
  width: 100%;
  justify-content: space-evenly;
  align-content: center;
  gap: 1vw;
}

.link {
  color: black;
  font-size: 1vw;
}

.knowMore {
  font-size: 1.3vw;
}

.knowMore a {
  color: white;
  text-decoration: none;
}

.desktop {
  display: block;
}

.mobile {
  display: none;
}

@media only screen and (max-width: 768px) {
  .dropdown select {
    width: 100%;
    font-size: 4vw;
    padding: 2vw 3vw;
    background-position: 3vw center;
    background-size: 2.5vw;
  }

  #pollutionDialog>img {
    width: 80vw;
    content: url("./assets/mobile_popup.png?r=2");
  }

  .mobile_waze {
    object-fit: contain;
    width: 8vw;
    position: absolute;
    right: 1vw;
    bottom: 2vw;
    display: block;
  }

  .container {
    display: flex;
    flex-direction: column;
    width: 100vw;
    height: fit-content;
    padding-bottom: 1vw;
    position: relative;
  }

  .hero-container {
    width: 100vw;
    height: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .img-info-container {
    background-color: #e7e7e7;
  }

  .hero-image {
    width: 100%;
    height: calc(100vw* 1214 / 1264);
    object-fit: contain;
    background-size: 100%;
    background-image: url("./assets/mobile-bg.jpg");
  }

  .logo {
    width: 11.95vw;
    margin-top: 4vw;
  }

  .long-line {
    width: 75vw;
    margin-top: 7vw;
  }

  .text-1 {
    font-size: 9vw;
  }

  .text-2 {
    font-size: 5vw;
  }

  .text-3 {
    font-size: 5vw;
  }

  .short-line {
    width: 22vw;
  }

  .cars {
    top: -1.2vw;
  }

  .mazda-cx90 {
    width: 48vw;
    right: 0vw;
    top: 6vw;
  }

  .mazda-cx5 {
    width: 45vw;
    left: -22vw;
    top: 8vw;
  }

  .mazda-3 {
    width: 37vw;
    right: -48.5vw;
    top: 6vw;
  }

  .info-container-1 {
    margin-right: 17vw;
    margin-top: -1vw;
  }

  .info-container-2 {
    margin-right: 3vw;
    margin-top: 3vw;
  }

  .info-container-3 {
    margin-top: 4vw;
    margin-right: 4vw;
  }

  .line-break-1,
  .line-break-2,
  .line-break-3 {
    height: 1px;
  }

  .line-break-1 {
    width: 19vw;
  }

  .line-break-2 {
    width: 19vw;
  }

  .line-break-3 {
    width: 14vw;
  }

  .line-break-1::after {
    width: 3.5vw;
    right: -3.5vw;
  }

  .line-break-2::after {
    width: 4.5vw;
    right: -4.5vw;
    transform: rotate(-75deg);
  }

  .line-break-3::after {
    width: 4vw;
    right: -4vw;
    transform: rotate(-75deg);
  }

  .car-title {
    font-size: 2.9vw;
  }

  .car-description {
    font-size: 2vw;
  }

  .price-after {
    font-size: 3vw;
  }

  .price {
    font-size: 4vw;
    line-height: 1;
  }

  .price-before {
    font-size: 2.8vw;
  }

  .price-before::after {
    left: 1vw;
    top: 2vw;
  }

  .hero-image-b-terms {
    display: none;
  }

  .fill-box {
    display: none;
  }

  .menu {
    height: 40vw;
    width: 100vw;
  }

  .menu--wrapper {
    width: 100vw;
  }

  .menu--item {
    width: 40vw;
  }

  .menu--item img {
    width: 40vw;
  }

  .menu--item h1 {
    font-size: calc(1.3vw + 10px);
    white-space: nowrap;
  }

  .text-box {
    width: 80vw;
    height: fit-content;
  }

  .text {
    padding: 20px 0;
    font-size: calc(4vw + 6px);
    line-height: 1;
  }

  .horizontal-line {
    display: block;
    margin: 10px 0;
    height: 2px;
    width: 90vw;
    background-color: black;
  }

  .car-vectors {
    height: fit-content;
    width: 100vw;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-around;
    align-items: center;
  }

  .car-vectors img {
    height: 15vw;
    width: 15vw;
  }

  .form-conainer {
    width: 100vw;
    height: fit-content;
    padding: 5vw 0 2vw 0;
  }

  .top-fish {
    width: 60vw;
    position: absolute;
    right: 1vw;
    top: -10vw;
  }

  .bottom-fish {
    position: absolute;
    width: 60vw;
    bottom: 21vw;
    left: 5vw;
  }

  .form-button1 {
    font-size: 5vw;
    padding: 4vw 2vw;
    border-radius: 10vw;
    margin-top: 4vw;
    width: 52%;
  }

  label {
    display: block;
    width: 85%;
    margin-top: 10px;
    font-size: 18px;
    font-weight: 300;
    color: #000;
  }

  .link {
    font-size: 4vw;
  }

  .privacy {
    font-size: 3.4vw;
    padding-top: 3vw;
  }

  .terms-container h1 {
    font-size: 3vw;
  }

  .form-input {
    margin-top: 0;
    font-size: 4vw;
  }

  .form-title-container {
    width: 85%;
    display: flex;
    flex-direction: row;
    gap: 12vw;
  }

  .form-title-container a {
    background: black;
    color: white;
    font-size: 1.6vw;
    padding: 0.7vw 2vw;
    text-decoration: none;
  }

  .form-title {
    font-size: 5vw;
  }

  .form-main-title {
    font-size: 7vw;
  }

  .form-button h1 {
    font-size: calc(4vw + 4px);
  }

  .mazda-image {
    width: 18vw;
    /* padding: 8vw 0 25vw; */
    padding: 8vw 0 8vw;
  }

  .terms {
    font-size: 3vw;
    bottom: 8vw;
    width: unset;
    align-self: unset;
  }


  .strip {
    width: 95vw;
    padding-top: 1vw;
    right: unset;
    margin: auto;
  }

  .form-input {
    height: 42px;
    padding: 2vw 3vw;
    width: 85%;
    margin-top: 2vw;
  }

  .dropdown {
    width: 85%;
    margin-top: 2vw;
  }

  .form-button {
    width: 85%;
    height: 42px;
    padding: 10px 0;
  }

  .form-button h1 {
    font-size: calc(4vw + 1px);
  }

  .terms-container {
    margin: 5vw 0;
    gap: 5vw;
  }

  .thanks_message {
    padding: 8vw;
    font-size: 6vw;
    display: flex;
    height: 5vw;
    align-items: center;
  }

  .links-container {
    display: flex;
    position: static;
    bottom: 2vw;
    width: 100%;
    justify-content: space-evenly;
  }

  .links-container-2 {
    width: 100%;

    position: unset;
  }

  .links-container-top {
    font-size: 4vw;
    padding-bottom: 1.5vw;
    display: block
  }

  .link {
    font-size: 3.5vw;
  }

  .terms-container input {
    height: 6vw;
    width: 6vw;
  }

  #close-iframe-dialog {
    font-size: 7vw;
  }

  .knowMore {
    font-size: 3.5vw;
    margin-bottom: 11vw;
  }

  .knowMore a {
    color: white;
    text-decoration: none;
  }

  .desktop {
    display: none;
  }

  .mobile {
    display: block;
  }
}