@font-face {
    font-family: 'light';
    src: url('./assets/fonts/PloniDL11AAALight.otf');
}

@font-face {
    font-family: 'regular';
    src: url('./assets/fonts/PloniDL11AAARegular.otf');
}

@font-face {
    font-family: 'medium';
    src: url('./assets/fonts/PloniDL11AAAMedium.otf');
}

@font-face {
    font-family: 'semi-bold';
    src: url('./assets/fonts/PloniDL11AAADemiBold.otf');
}

@font-face {
    font-family: 'bold';
    src: url('./assets/fonts/PloniDL11AAABold.otf');
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body {
    font-family: 'regular', sans-serif;
}

.main-container{
    background-color: #004fa7;
    width: 100vw;
    height: 100svh;
    /* aspect-ratio: 1920 / 1080; */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    
}

.top-wraper-container{
    display: flex;
    flex-direction: row;
}

.right-section-container{
    width: 70%;
    /* background-color: black; */
    /* height: 100%; */
    display: flex;
    flex-direction: column;
}

.right-section-top-container{
    display: flex;
    flex-direction: row;
    padding: 1.67vw 2.29vw 0 0;
    gap: 2.86vw;

}

.logo{
    object-fit: contain;
    width: 7.29vw;
}

.right-section-top-other{
    display: flex;
    flex-direction: row;
    color: white;
    gap: 0.99vw;
    font-size: 1.77vw;
    font-family: 'light';
}


.right-section-top-other-text{
    font-size: 1.37vw;
    font-family: 'regular';
    cursor: pointer;
}

.right-section-middle-container{
    display: flex;
    flex-direction: column;
    width: 42.5vw;
    align-items: end;
}

.separator{
        font-size: 1.6vw;
        font-family: 'light';   
        margin-top: -0.2vw;
}

.right-section-middle-text-container-1{
    display: flex;
    flex-direction: row;
    color: #b6e5ff;
    /* padding-right: 5.36vw; */
    margin-top: 2.9vw;
    /* margin-top: 5vw; */
    gap: 1.41vw;
    margin-left: 1.93vw;
    width: 35.21vw;
    justify-content: end;
}


.text-1{
    font-family: 'medium';
    /* font-size: 4vw; */
    font-size: 4.3vw;
    line-height: 82%;
    text-align: end;
    
}
.text-2{
    /* font-size: 9.95vw; */
    font-size: 10.5vw;
    font-family: 'bold';
    /* line-height: 100%; */
    line-height:72%;
    letter-spacing: -0.205vw;

}

.right-section-middle-text-container-2{
    color: #ffdf24;
    padding-right: 3.59vw;
    font-family: 'bold';
    margin-top: 1.77vw;
    margin-left: 2.08vw;
}


.text-3{
    /* font-size: 9.95vw; */
    font-size: 10.45vw;
    /* line-height: 82%; */
    /* text-align: end; */  
    font-family: 'bold';
    line-height: 67%;
    letter-spacing: -0.295vw;
}
.text-3 > span{
    font-size: 4vw;
    font-family: 'bold';
    margin-right: -1vw;
}

.text-4{
    font-size: 6.7vw;
    line-height: 54%;
    font-family: 'semi-bold';
    /* text-align: end; */  
}


.right-section-middle-text-container-3{
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42.5vw;
    height: 4.48vw;
    background-color: #52b0ff;
    border-bottom-left-radius: 30px;
    margin-top: 1.51vw;
    margin-bottom: 1vw;
    
}

.text-5{
    font-size: 2.55vw;
    line-height: 54%;
    font-family: 'medium';
    /* text-align: end; */  
}











.left-section-container{
    padding: 1.93vw 0 0 1.98vw;
    width: 30%;
    /* background-color: white; */
    /* height: 100%; */
    display: flex;
    /* align-items: flex-end; */
    justify-content: end;
}


.form-container{
    background-color: #52b0ff;
    height: 31.15vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 24.43vw;
    border-bottom-right-radius: 39%;
    /* align-self: flex-end; */
}

.text-6{
    color: #004fa7;
    font-family: 'bold';
    font-size: 2.76vw;
    /* width: 21.51vw; */
    /* height: 4.01vw; */
    /* line-height: 66%; */
    line-height: 95%;
    
    margin-top: 1.56vw;

}
.text-7{
    color: #004fa7;
    font-family: 'medium';
    
    font-size: 1.62vw;
    line-height: 70%;
    margin-bottom: 0.83vw;
}
#form{
    display: flex;
    flex-direction: column;
    width: 87%;
}

.form-input{
    width: 100%;
    height: 3.65vw;
    direction: rtl;
    text-indent: 1.09vw;
    /* border-radius: 5px; */
    border-radius: 0.3vw;
    border-top-left-radius: 30px;
    border: none;
    font-size: 1.5vw;
    font-family: 'regular';
    color: #004fa7;
    
    /* display: flex; */
}
.form-input::placeholder{
  
    font-size: 1.5vw;
    font-family: 'regular';
    color: #004fa7;
    
    /* display: flex; */
}
.form-input + .form-input{
   margin-top: 0.68vw;
}

.text-8{
    color: white;
    font-family: 'medium';
    font-size: 1.35vw;
    /* width: 5.21vw; */
    margin-top: 0.89vw;
    width: 95%;
    align-self: center;
    line-height: 70%;
}

.license{
    display: flex;
    flex-direction: row;
    justify-content: space-between;    
    width: 95%;
    margin-top: 0.42vw;
    align-self: center;
}


.license > label{
    /* display: flex;
    flex-direction: row; */
    /* gap: 0.68vw; */
    color: white;
    font-family: 'medium';
    font-size: 1.36vw;
    display: flex;
    align-items: center;
    gap: 0.26vw;

}

.license > label > input[type="radio"] {
    -webkit-appearance: none; 
    appearance: none; 
    width: 1.46vw; 
    height: 1.46vw; 
    border: none; 
    background-color: white;
    border-radius: 50%; 
    transition: 0.2s all linear; 
    display: inline-block;
}


.license > label > input[type="radio"]:checked {
    background-color:  #004fa7;
    outline: 2px solid white;
    display: inline-block;
}

/* .text-test{
    font-family: 'medium';
    font-size: 1.15vw;
    width: 5.16vw;
} */

.submit-button{
    align-self: flex-end;
    margin-top: 4.32vw;
    width: 5.26vw;
    height: 2.76vw;
    /* border-radius: 15px; */
    border-radius: 0.83vw;
    background-color: #004fa7;
    color: white ;
    font-family: 'medium';
    font-size: 1.4vw;
    line-height: 66%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
}


.footer{
    /* position: fixed; */
    /* bottom: 0.78vw; */
    position: relative;
    margin-bottom: 0.78vw;
    display: flex;
    flex-direction: row;
    width: 100%;
    z-index: 1;
}

.footer-text-container{
    background-color: white;
    height: 5.16vw;
    width: 83.23vw;
    border-bottom-left-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-text{
    font-family: 'medium';
    font-size: 2vw;
    color: #004fa7;   
}

.footer-text-other{
    display: flex;
    flex-direction: column;
    width: calc(100% - 83.23vw);
    align-items: center;
}

.phone-number-icon{
    object-fit: contain;
    width: 12.14vw;
    cursor: pointer;
}

.text-9{
    font-family: 'regular';
    font-size: 1.46vw;
    line-height: 80%;
    color: white;
}

.man-container{
    /* position: absolute;

    bottom: 1.88vw;

    z-index: -1;
        right: 41vw; */

            position: absolute;
    bottom: 0px;
    left: 25%;
    z-index: -1;
}

.man{
    
    
    /* width: 36vw; */
    /* width: 43.85vw;
    object-fit: contain; */
        /* width: 32vw; */
        width: 34vw;
    object-fit: contain;
    
}



/************ BURGER-MENU ************/
.hamburger {
    display: flex;
    flex-direction: column;
    gap: 1vw;
    background-color: transparent;
    border: none;
    cursor: pointer;
    height: fit-content;
    position: relative;
    z-index: 3;
}

.hamburger span {
    width: 5vw;
    height: 0.6vw;
    background-color: white;
}

.hamburger.active {
    visibility: hidden;
}

/* Dropdown Menu Styles */
.dropdown-menu {
    position: absolute;
    top: 15vw;
    right: 0vw;
    left: unset;
    width: 50%;
    max-height: 0;
    overflow: hidden;
    background-color: #52b0ff;
    z-index: 1000;
    transition: max-height 0.35s ease, padding-top 0.35s ease, padding-bottom 0.35s ease;
    padding: 0 3vw; /* vertical padding opens with max-height */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    border-bottom-left-radius: 8vw;
    z-index: 1;
}

.dropdown-menu.open {
    max-height: 80vh;
    padding-top: 10vw;
    padding-bottom: 2vw;
}

.close-menu {
    position: absolute;
    top: 5vw;
    right: 5vw;
    background: transparent;
    border: none;
    color: white;
    font-size: 16vw;
    cursor: pointer;
    line-height: 1;
    padding: 0;
    width: 4vw;
    height: 4vw;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'light';
    opacity: 0;              /* hidden by default */
    pointer-events: none;    /* not clickable when hidden */
    transition: opacity 0.2s ease;
}

/* Show the close button only when menu is open */
.dropdown-menu.open .close-menu {
    opacity: 1;
    pointer-events: auto;
}

.dropdown-menu ul {
    list-style: none;
    display: flex;
    flex-direction: column;
}

.dropdown-menu li {
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.25s ease;
}

.dropdown-menu.open li {
    opacity: 1;
    transform: translateY(0);
}

.dropdown-menu.open li:nth-child(1) {
    transition-delay: 0.1s;
}

.dropdown-menu.open li:nth-child(2) {
    transition-delay: 0.2s;
}

.dropdown-menu.open li:nth-child(3) {
    transition-delay: 0.3s;
}

.dropdown-menu a {
    color: white;
    text-decoration: none;
    font-family: 'medium';
    font-size: 7vw;
    display: block;
    transition: color 0.2s ease;
}

.dropdown-menu a:hover {
    color: #004FA7;
}

/* separators between items - 90% width */
.dropdown-menu li + li::before {
    content: "";
    display: block;
    width: 90%;
    height: 3px;
    background: rgba(255, 255, 255, 0.8);
    margin: 1vw 0 1vw 0;
}

/************ END BURGER-MENU ************/


.popup {
    position: fixed;
    display: none;
    width: 75%;
    min-height: 65%;
    top: 6vw;
    padding: 6vw 2vw 3vw 2vw;
    border-radius: 3vw;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    background: #ffffff;
    display: none;
    z-index: 3;
    width: fit-content;
    margin-right: 0vw;
    padding: 1vw;
    border-radius: 0.6vw;
    border-bottom-left-radius: 13vw;
    width: 57%;
    margin-right: 1vw;
    height: fit-content;
}

    .popup.open {
        display: flex;
        flex-direction: column;
    }

    .close-dialog{
        width: unset;
        width: fit-content;
        height: fit-content;
        background-color: transparent;
        border: none;
        /* transform: rotate(-45deg); */

    }

    .close-dialog > p{
        transform: rotate(-45deg);
        font-size: 3vw;
        line-height: 70%;
        
        

    }

    .modal-title {
            color: #8AD6F2;
    font-size: 15vw;
    font-family: 'bold';
    line-height: 0.8;
        font-size: 5vw;
        padding: unset;
    }

    .modal-text {
    color: #004FA7;
    font-size: 4vw;
    font-family: 'regular';
    line-height: 1;
    font-size: 1.65vw;
}

.modal-text{
    padding-top: 1vw;
}

    /* .close-dialog {
        top: 6.5vw;
        left: 92vw;
        width: 2vw;
        height: 2vw;
    }


    dialog::before {
        transform: translate(-50%, -50%) rotate(45deg);
        
            width: 2vw;
            height: 0.3vw;
            border-radius: 0.5vw;
    }

    dialog::after {
        transform: translate(-50%, -50%) rotate(-45deg);
        width: 2vw;
            height: 0.3vw;
            border-radius: 0.5vw;
    } */

    .form-container-thx{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 1vw;
        height: 31.15vw;
    }
    .success-message-title {
        color: white;
        font-size: 5vw;
        font-family: 'bold';
        text-align: center;
        line-height: 1;
    }

    .success-message-text {
        color: white;
        font-size: 2.6vw;
        font-family: 'regular';
        text-align: center;
        line-height: 1;
    }


.mobile {
    display: none;
}

.error { outline: tomato solid 2px; }
.error::placeholder { color: tomato; }


.spinner {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    border: 3px solid rgba(255, 255, 255, 0.3);
    border-top-color: black;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    vertical-align: middle;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 768px) {
    .mobile {
        display: flex;
    }

    .logo {
        object-fit: contain;
        width: 18.13vw;
    }

    .main-container {
        height: unset;
        flex-direction: column;
        min-height: 100svh;
		aspect-ratio: unset;
		
    }

    .top-wraper-container {
        display: flex;
        flex-direction: column;
    }

    .right-section-container{
        width: 100%;
        height: unset;
    }
    
    .right-section-middle-container{
        margin-top: 5.78vw;
        width: 100%;
        align-items: center;
        gap: 1vw;
    }








    .right-section-middle-text-container-1 {
        margin: unset;
        padding: unset;
        width: unset;
        gap: 3.41vw;
    }

    .text-1 {
        font-size: 7vw;
       
        /* text-align: end; */
    }
    .text-2 {
        font-size: 17vw;
       
        /* text-align: end; */
    }


    .right-section-middle-text-container-2 {
        margin: unset;
        padding: unset;
    }

    .text-3 {
        font-size: 16.6vw;
       
        /* text-align: end; */
    }
    .text-3 > span{
        font-size: 5vw;
       
        /* text-align: end; */
    }
    .text-4 {
        font-size: 10.8vw;

        /* text-align: end; */
    }





    .right-section-middle-text-container-3 {
        color: white;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 63.28vw;
        height: 6.48vw;
        background-color: #52b0ff;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
        margin-top: 1.51vw;
    }

    .text-5{
        font-size: 3.95vw;
    }



    .man{
        width: 72.5vw;
        object-fit: contain;
        align-self: center;
        margin-top: -2vw;
        margin-bottom: -1px;
        margin-right: 7.19vw;
    }





    .left-section-container{
        width: 100%;
        height: unset;
        padding: unset;
        flex-direction: column;
        
        /* background-color: white; */
    }

    .form-top{
        background-color: white;
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
        padding-bottom: 20px;
        margin-bottom: -20px;
    }

    .form-top-text{
        text-align: center;
        width: 100%;
        font-family: 'medium';
        font-size: 4.5vw;
        line-height: 90%;
        padding: 2vw 0;
        color: #004fa7;
    }

    .form-top-text > span{
        font-family: 'bold';
    }
       

    .form-container{
        width: 100%;
        height: unset;
        border-radius: unset;
        padding: unset;
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
    }

    .text-6{
        font-size: 9vw;
        line-height: 95%;
        margin-top: 2.56vw;
    }
    .text-7{
        font-size: 5.2vw;
        margin-bottom: 3vw;

    }

    #form{
        width: 75.78%;
    }

    .form-input {
       height: 10.78vw;
       border: 1.5vw;
       border-top-left-radius: 5vw;
       font-size: 5vw;
       text-indent: 3.28vw;
    }
    .form-input::placeholder {

       font-size: 5vw;
       text-indent: 3.28vw;
    }

    .form-input  + .form-input{
        margin-top: 2.19vw ;
    }

    .right-section-top-container{
        flex-direction: row-reverse;
        gap: unset;
        justify-content: space-between;
        padding: 3.59vw 2.66vw 0 3.44vw;
    }

    .text-8{
        margin-top: 3.28vw;
        font-size: 5vw;
    }

    .license {
        margin-top: 1.25vw;
   
        width: 95%;

    }

    .license > label {
    /* gap: 0.68vw; */
        color: white;
        font-family: 'medium';
        font-size: 5vw;
        display: flex;
        align-items: center;
        gap: 1.09vw;
    }

    .license > label > input[type="radio"] {

        width: 4.38vw;
        height: 4.38vw;

    }


    .right-section-top-other {
        gap: 2.97vw;
        align-items: center;
    }


    .submit-button {
        align-self: center;
        margin-top: 5.94vw;
        width: 49.69vw;
        height: 12.66vw;
        border-radius: 9px;
        background-color: #004fa7;
        color: white;
        font-family: 'medium';
        font-size: 9.06vw;
        line-height: 66%;
        display: flex;
        align-items: center;
        justify-content: center;
        border: none;
        margin-bottom: 4.22vw;
    }



    .hamburger {
        margin-top: 0.78vw;
        display: flex;
        flex-direction: column;
        gap: 2vw;
        background-color: transparent;
        border: none;
        cursor: pointer;
        height: fit-content;
        position: relative;
        z-index: 3;
    }

    .hamburger span {
        width: 7.97vw;
        height: 0.8vw;
        background-color: white;
    }

    .hamburger.active {
        visibility: hidden;
    }

    .phone-icon-container{
        height: fit-content;
    }

    .phone-icon{
        object-fit: contain;
        width: 8.13vw;
    }


    .popup {

        width: 100%;
        min-height: fit-content;
        top: 15vw;
        padding: 6vw 3vw 6vw 3vw;
        border-radius: 3vw;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        background: #ffffff;


        width: fit-content;
        margin-right: 0vw;
        /* padding: 1vw; */
        border-radius: 0.6vw;
        border-bottom-left-radius: 13vw;
        width: 100vw;
        margin-right: unset;
        height: fit-content;
        border:#004FA7 solid 2px;
    }

    .modal-title {
        color: #8AD6F2;
 
        font-family: 'bold';
        line-height: 0.8;
        font-size: 10vw;
        padding: unset;
    }

    .modal-text {
        color: #004FA7;
        font-size: 6vw;
        font-family: 'regular';
        line-height: 1;

    }

    .close-dialog > p {

        font-size: 10vw;
        line-height: 70%;
    }

    .success-message-title {
        color: white;
        font-size: 11vw;
        font-family: 'bold';
        text-align: center;
        line-height: 1;
    }

    .success-message-text {
        color: white;
        font-size: 6vw;
        font-family: 'regular';
        text-align: center;
        line-height: 1;
    }

    .form-container-thx{
        gap: 5vw; 
        padding: 17vw 0;
    }




    .desktop {
        display: none;
    }

}