@font-face { font-family: 'mazda-regular'; src: url('./fonts/MazdaType-Regular.ttf'); }
@font-face { font-family: 'mazda-mid'; src: url('./fonts/MazdaType-Medium.ttf'); }
@font-face { font-family: 'one-bold'; src: url('./fonts/OENaPro-Bold.ttf'); }
@font-face { font-family: 'one-regular'; src: url('./fonts/OENaPro-Regular.ttf'); }
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html, body {
    min-height: 100%;
    font-family: 'one-regular';
    direction: rtl;
}

.main {
    width: 100%;
    display: flex;
    flex-direction: column;
}
.section-1 {
    display: flex;
    flex-direction: column;
    background-image:  url('./images/desk-bg-dark.png'), url('./images/desk-bg-main.jpg');
    background-size: 100% auto, cover;
    background-position: center bottom, center bottom;
    height: 100svh;
    max-height: min(100vw* (1080/1920), 100svh);
    min-height: calc(100vw* (700/1920));
    background-repeat: no-repeat;
    position: relative;
    container-type: size;
    display: flex;
    justify-content: center;
    align-items: center;
}
.logo-container {
    position: absolute;
    direction: ltr;
    left: min(5cqw,5cqh);
    top: min(5cqw,5cqh);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4cqw;
}
.logo {
    width: 5cqw;
    aspect-ratio: 77 / 71;
}
.menu-container {
    position: relative;
}
.menu {
    width: 3cqw;
    height: 3cqw;
    cursor: pointer;
}
.menu-div {
    position: absolute;
    background: white;
    left: 2cqw;
    top: 2cqw;
    z-index: 1;
    display: none;
    flex-direction: column;
    align-items: center;
    direction: rtl;
    gap: min(4cqw,4cqh);
    padding: min(2cqw,2cqh);
}
.menu-div .logo {
     width: min(12cqw,12cqh);
}
.red-menu,
.black-menu,
.white-menu {
    width: min(20cqw,20cqh);
}
.x {
    align-self: flex-start;
    width: min(4cqw,4cqh);
    height: min(4cqw,4cqh);
    cursor: pointer;
}

.section-1-content {
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
.top {
    width: 100%;
    display: flex;
    flex-grow: 2;
}
.right {
    width: 40%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    container-type: size;
}
.form-container {
    height: 100%;
    width: 90%;
    background: #ffffffe8;
    padding: 0 5cqw;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.form {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: min(2cqw, 2cqh);
}
.form-title {
    font-family: 'one-bold';
    text-align: center;
    font-size: min(5cqw,5cqh);
}
.input {
    font-family: 'one-regular';
    background: white;
    color: rgb(56, 56, 56);
    border: 0;
    font-size: min(4cqw,4cqh);
    padding: min(2cqw,2cqh);
}
.input::placeholder {
    color: rgb(56, 56, 56);
}
.checkbox-container {
    display: flex;
    gap: min(3cqw, 3cqh);
    font-size: min(2.6cqw,2.6cqh);
}
.checkbox {
    height: min(10cqw,10cqh);
    width: min(10cqw,10cqh);
}
.submit {
    background: black;
    color: white;
    font-family: 'one-bold';
    padding: min(2cqw,2cqh);
    font-size: min(5cqw,5cqh);
}
.red {
    color: red;
}
.left {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    padding: min(1cqw,1cqh);
}
.section-1-title {
    font-family: 'one-bold';
    font-size: min(8cqw,8cqh);
    color: white;
    text-shadow: 0 0 1cqw #000000Fa;
    flex-grow: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.section-1-subtitle {
    text-align: center;
    font-size: min(2.7cqw,2.7cqh);
    font-family: 'one-regular';
    color: white;
    text-shadow: 0 0 1cqw #000000Fa;
    padding: min(1cqw,1cqh) 0 min(7cqw,7cqh) 0;
}
.cars-container {
    position: relative;
    height: min(43cqw,43cqh);
    width: 0;
    background: blue;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.black-car-titles {
    color: white;
    width: min(40cqw,28cqh);
    position: absolute;
    top: min(38cqw,18cqh);
    left: min(20cqw, 20cqh);
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: min(0.3cqw,0.3cqh);
}
.black-car-titles img {
    align-self: center;
    width: min(20cqw,20cqh);
    padding-left: min(1.5cqw,1.5cqh);
}
.red-car-titles {
    color: white;
    width: min(35cqw, 35cqh);
    position: absolute;
    top: min(38cqw,24cqh);
    right: min(15cqw, -15cqh);
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: min(0.3cqw,0.3cqh);
}
.red-car-titles img {
    align-self: center;
    width: min(25cqw,25cqh);
    padding-left: min(1.5cqw,1.5cqh);
}
.white-car-titles {
    color: white;
    width: min(35cqw, 35cqh);
    position: absolute;
    top: min(38cqw,18cqh);
    left: -60cqh;
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: min(0.3cqw,0.3cqh);
}
.white-car-titles img {
    align-self: center;
    width: min(15cqw,15cqh);
    padding-left: min(1.5cqw,1.5cqh);
}
.titles-main {
    font-family: 'mazda-regular';
    font-size: min(3.2cqw,3.2cqh);
}
.titles-sub {
    font-size: min(2cqw,2.2cqh);
    line-height: 1;
    padding-bottom: min(1cqw,1cqh);
}
.titles-sub2 {
    align-self: center;
    width: fit-content;
    line-height: 0.9;
    font-size: min(2cqw,2cqh);
    padding: min(1cqw,1cqh) 0;
    border-top: min(0.2cqw,0.2cqh) solid white;
    border-bottom: min(0.2cqw,0.2cqh) solid white;
}
.red-car {
    width: min(55cqw, 55cqh);
    position: absolute;
}
.black-car {
    width: min(38cqw, 38cqh);
    position: absolute;
    left: min(15cqw, 15cqh);
    top: min(1cqw, 1cqh);
}
.white-car {
    width: min(50cqw, 50cqh);
    position: absolute;
    right: min(3cqw, 3cqh);
}
.inner-cars-titles {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.section-1-terms {
    text-decoration: none;
    color: white;
    font-size: min(1.7cqw,1.7cqh);
}
.section-1-strip {
    background: white;
    height: min(3.3cqw,3.3cqh);
    width: 100%;
    display: flex;
    justify-content: flex-start;
    cursor: pointer;
}
.section-1-strip img {
    max-height: 100%;
}
.left-buttons  {
    padding: 15vw 0 5vw;
    gap: 5vw;
    display: flex;
    width: 90%;
}
.left-buttons a{
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex: 2 1 40%;
    padding: min(1cqw,1cqh) 0 min(2cqw,2cqh);
    font-size: min(4cqw,4cqh);
    border: 0.5vw solid white;
    text-decoration: none;
    color: white;
}

.popup {
    position: fixed;
    margin: auto;
    max-width: 80vw;
    border: 0;
    padding: 1vw;
    border-radius: 1vw;
}
.popup-x {
    width: 3vw;
    height: 3vw;
    cursor: pointer;
}
.popup img {
    width: 100%;
    object-fit: contain;
}

.error {
    outline:1px solid tomato !important;
}
.error::placeholder {
    color: tomato !important; 
}
.thanks {
    font-size: min(6cqw,6cqh);
    text-align:center;
}
.desktop { display: flex; }
.mobile { display: none; }

@media (max-width:768px) {
    body, html {
        overflow-x: hidden;
    }
    
    .section-1 {
        background: none;
        max-height: unset;
        min-height: 100svh;
        width: 100vw;
        justify-content: flex-start;
    }
    .section-1-content {
        height: unset;
        flex-direction: column;   
    }
    .section-1-title {
        flex-grow: 0;
    }
    .top {
        flex-direction: column-reverse;
    }
    .logo-container{
        width: 100%;
        justify-content: space-between;
        top: 0;
        left: 0;
        padding: 3vw;
    }
    .logo {
        width: 10vw;
    }
    .menu {
        width: 8vw;
        height: 8vw;
    }
    .menu-div {
        left: unset;
        right: 2vw;
    }
    .left {
        width: 100%;
        background: url('./images/desk-bg-dark.png'), url('./images/mob-bg-main.jpg');
        aspect-ratio: 640/840;
        background-size: 100% auto, 100% 100%;
        background-position: bottom center, center center;
        background-repeat: no-repeat;
    }
    .section-1-title {
        font-size: 8vw;
    }
    .section-1-subtitle {
        font-size: 3.8vw;
    }
    .black-car {
        left: 13vw;
    }
    .black-car-titles {
        left: 13vw;
        top: 17vw;
        width: 37vw;
    }
    .black-car-titles img {
        align-self: center;
    }

    .white-car-titles {
        width: 30vw;
        left: -50vw;
        top: 18vw;
    }
    .red-car-titles {
        top: 24vw;
        right: -13vw;
    }
    .red-car-titles img {
        width: 100%;
    }
    .titles-main {
        font-size: 3.7vw;
    }
    .titles-sub {
       font-size: 2.8vw;
    }
    .titles-sub2 {
        font-size: 2.7vw;
    }
    .right {
        width: 100%;
        container-type:unset;
        background: #e9eaeb;
    }
    .form-container {
        width: 85%;
        padding: unset;
        background: unset;
    }
    .form {
        height: unset;
        padding: 7vw 0;
        gap: 4vw;
    }
    .checkbox-container {
        align-items: center;
    }
    .section-1-terms {
        color: black;
        font-size: 3vw;
        text-align: center;
    }
    .section-1-terms a {
        color: white;
    }
    .mobile-footer {
        background: black;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 7vw;
    }
    .mobile-footer .logo {
        width: 10vw;
        height: 10vw;
    }
    .section-1-strip {
        justify-content: center;
        align-items: center;
        max-height: unset;
        height: unset;
        padding: 3vw 0;
    }
    .section-1-strip img {
        width: 100%;
    }
    .popup {
        padding: 4vw;
    }
    .popup-x {
        width: 8vw;
        height: 8vw;
    }
    .thanks {
        padding: 40vw 0;
        font-size: min(6cqw,6cqh);
        text-align:center;
    }
    .desktop { display: none; }
    .mobile { display: flex; }
}