@font-face {
    font-family: 'Ubuntu-Regular';
    src: url('../font/Ubuntu-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Ubuntu-Bold';
    src: url('../font/Ubuntu-Bold.ttf') format('truetype');
}

@font-face {
    font-family: 'Ubuntu-boldItalic';
    src: url('../font/Ubuntu-boldItalic.ttf') format('truetype');
}

@font-face {
    font-family: 'Ubuntu-Light';
    src: url('../font/Ubuntu-Light.ttf') format('truetype');
}

@font-face {
    font-family: 'Ubuntu-Medium';
    src: url('../font/Ubuntu-Medium.ttf') format('truetype');
}

body{
    background-color: #FBE9EB;
    color: #000000;
    min-height: 100dvh;
}

.o-form__error{
    margin-top: -4dvh;
    margin-bottom: 4dvh;
    color: red;
}

.pink{
    color: #FF8189 !important;
    background-color: transparent !important;
}

.margin-bot0{
    margin-bottom: 0 !important;
}

.margin-top0{
    margin-top: 0 !important;
}

.uppercase{
    text-transform: uppercase !important;
}

.bold{
    font-family: 'Ubuntu-Bold', sans-serif !important;
}

.bold-italic{
    font-family: 'Ubuntu-boldItalic', sans-serif !important;
}

.light{
    font-family: 'Ubuntu-Light', sans-serif !important;
}

.regular{
    font-family: 'Ubuntu-Regular', sans-serif !important;
}

.medium{
    font-family: 'Ubuntu-Medium', sans-serif !important;
}

.border{
    -webkit-text-stroke: 2px #FF8189;
    color: transparent !important;
}

.text-container {
    display: inline-block;
    position: relative;
    margin-bottom: -5dvh;
}

.pink-line {
    width: 100%;
    height: 3px;
    background-color: #FF8189;
    margin-top: 3%;
    margin-bottom: 15%;
}

.material-tooltip {
  background-color: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.custom-btn {
    background: #FF828A;
    background: linear-gradient(90deg, rgba(255, 130, 138, 1) 0%, rgba(221, 94, 103, 1) 100%);
    color: white;
    border: none;
    border-radius: 50px;
    padding: 20px 45px;
    font-weight: bold;
    /* cursor: pointer; */
    transition: all 0.3s ease;
    font-size: 28px;
    margin-top: 10%;
    cursor: pointer;
}

.custom-btn:hover {
    background-color: #e6727a;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(255, 129, 137, 0.3);
}

.custom-btn:active {
    transform: translateY(0);
}

/* Index */

.logo{
    margin-top: 3dvh !important;
}

.car {
    position: absolute;
    width: 55%;
    top: 5%;
}

.car .road{
    position: relative; 
    width: 135dvh; 
    left: -5%;
    margin-top: -40dvh;
}

/* Form */

.car-cloud{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    overflow: hidden;
}

.car-cloud img{
    width: 115%;
    margin-left: -3%;
    margin-top: -3%;
}

.input-field {
    margin-bottom: 0px;
    margin-top: 0px;
}

.input-field>label {
    transform: translateY(12px);
}

.input-field>label:not(.label-icon).active {
    transform: translateY(12px);
}
 
.input-field input[type="text"],
.input-field input[type="email"], .input-field input[type="date"]{
    border: 0px;
    background-color: #FFFFFF;
    border-radius: 10px;
    padding: 10px;
    box-sizing: border-box;
    height: 50%;
    margin: 0 0 0 0;
    margin-bottom: 4dvh;
}
input[type="date"] {
    height: 40px !important;
}

.input-text {
    position: absolute !important;
    top: -35px !important;
    color: #FF8189 !important;
    font-family: "Ubuntu-bold" !important;
}

.file-container{
    padding: 10px;
    box-sizing: border-box;
    overflow: hidden;
    background-color: #FFFFFF;
    border-radius: 10px;
    height: 50%;
}

.file-field .btn{
    background: #FF828A;
    background: linear-gradient(90deg, rgba(255, 130, 138, 1) 0%, rgba(221, 94, 103, 1) 100%);
    border-radius: 10px;
    min-width: fit-content;
    white-space: normal;
    padding: 12px 16px;
    line-height: 1.2;
    text-align: center;
}

.file-field .btn span {
    display: inline-block;
    font-size: clamp(0.65rem, 1.5vw, 0.75rem);
    word-wrap: break-word;
}

.file-path-wrapper{
    height: 20px;
}

[type="checkbox"]+span:not(.lever):before, [type="checkbox"]:not(.filled-in)+span:not(.lever):after {
    border: 2px solid #FF8189;
    border-radius: 3px;
}

[type="checkbox"]:checked+span:not(.lever):before{
    border-right-color: #FF8189 !important;
    border-bottom-color: #FF8189 !important;
}

label{
    color: #000000 !important;
}

label a{
    color: #FF8189 !important;
}

.u-hidden{
    display: none;
}

.road-cloud{
    position: absolute;
    right: 0;
    z-index: -1;
    width: 100%;
    overflow: hidden;
    margin-top: -34%;
}

.road-cloud img{
    position: relative;
    width: 100%;
    right: -8%;
}

/* anim */

.anim-cloud{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* result */

.result_gift{
    position: relative;
    background: #FF828A;
    background: linear-gradient(90deg, rgba(255, 130, 138, 1) 0%, rgba(221, 94, 103, 1) 100%);
    color: white;
    border: none;
    border-radius: 50px;
    padding: 20px 45px;
    width: max-content;
    left: 50%;
    transform: translateX(-50%);
}

.left-img{
    position: absolute;
    left: 2%;
    margin-top: -3%;
    width: 18%;
    overflow: hidden;
    z-index: -1;
}

.left-img img{
    width: 100%;
}

.right-img{
    position: absolute;
    right: 12%;
    width: 70dvw;
    height: 86%;
    overflow: hidden;
    z-index: -1;
}

.right-img img{
    position: relative;
    left: -5%;
    width: 105%;
}

.footer{
    position: relative;
    bottom: 0;
    background-color: white;
    width: 100%;
    display:inline-block;
}
footer ul{
    display: flex;
    justify-content: space-between;
    padding-left: 15% !important;
    padding-right: 15% !important;
    margin-top: 20px;
    margin-bottom: 15px;
}

footer ul a{
    color: black !important;
}

.vnc{
    position: relative;
    bottom: 0;
    right: 2%;
    /* transform: translate(-50px, -60px) !important; */
    text-align: right;
}

.cpo{
    padding-left: 35px !important;
}


/* responsive */
@media (max-width: 1500px) {
    .right-img{
        right: 4%;
        margin-top: -4%;
    }
    .right-img img{
        left: -5%;
        top: 15%;
    }
}

@media (max-width: 1350px) {
    .car .road{
        position: relative; 
        width: 80dvw; 
        left: -8dvw;
        margin-top: -20dvh;
    }
    .car-cloud{
        top: 0;
        left: 0;
    }
    .car-cloud img{
        width: 115%;
        margin-left: -3%;
        margin-top: -5%;
    }
    .right-img{
        right: 0%;
        margin-top: -4%;
    }
    .right-img img{
        left: 2%;
        top: 20%;
    }
}

@media (max-width: 993px) {
    .margin-top0-small{
        margin-top: 0 !important;
    }

    h1{
        font-size: 40px;
    }
    h2{
        font-size: 34px;
    }
    h3{
        font-size: 30px;
    }
    h4{
        font-size: 25px;
    }
    h5{
        font-size: 16px;
    }
    .gift-home{
        font-size: 14px !important;
    }
    .custom-btn{
        font-size: 18px;
        padding: 15px 30px;
        z-index: 5;
        font-weight: 500;
        margin-top: 2%;
    }
    .logo img{
        width: 70%;
        max-width: 220px;
    }

    .pink-line{
        margin-bottom: 10%;
    }

    .car-small{
        overflow: hidden;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        /* transform: translate(0%,-30%); */
        margin-top: -20dvh;
        position: relative;
        z-index: -1 !important;
    }
    .car-small .road{
        transform: translate(4%, 0%);
        margin-bottom: -20%;
    }
    .vnc{
        font-size: 10px;
    }
    
    .row .col{
        padding: 0;
    }

    .car-form{
        display: flex;
        justify-content: center;
        margin-top: -15dvh;
        position: relative;
        z-index: -1 !important;
        overflow: hidden;
    }
    .car-form img{
        margin-left: 13dvw;
        width: 100dvw;
    }
    .coord{
        transform: translateY(-7dvh);
        margin-top: -5dvh !important;
        margin-bottom: 0% !important;
    }
    .info-cloud{
        position: absolute;
        z-index: -1;
        width: 100%;
        left: 0;
        max-width: 100dvw;
        overflow: hidden;
        margin-top: -4dvh;
        display: flex;
        justify-content: center;
    }
    .info-cloud img{
        transform: translate(5%, 0%);
    }
    .buy-cloud{
        position: absolute;
        z-index: -1;
        width: 100%;
        left: 0;
        max-width: 100dvw;
        overflow: hidden;
        margin-top: -16dvh;
        display: flex;
        justify-content: center;
    }
    .file-field p{
        font-size: 10px !important;
    }
    .road-cloud-small{
        position: absolute;
        right: 0;
        z-index: -1;
        width: 100%;
        overflow: hidden;
        margin-top: -25dvh;
    }

    .road-cloud-small img{
        position: relative;
        width: 100%;
        right: -18dvw;
    }

    .checkbox span{
        font-size: 13px !important;
        line-height: 1rem !important;
    }
    .cpo{
        font-size : 10px !important;
        padding-left: 35px !important;
    }

    .result_gift{
        font-size: 18px;
        padding: 15px 30px;
        z-index: 5;
        font-weight: 500;
        margin-top: 2%;
    }
    .wordin-result p, .wordin-result span{
        font-size: 13px !important;
    }
    .center-img{
        position: relative;
        width: 100dvw;
        /* margin-left: -10%; */
        margin-top: -10dvh;
        display: flex;
        justify-content: right;
        overflow: hidden;
        z-index: -1;
    }
    .center-img img{
        position: relative;
        width: 180%;
        left: 10dvw;
        margin-top: -8dvh;
        margin-bottom: -10dvh;
    }
    .footer {
        position: relative;
        bottom: 0;
        background-color: white;
        width: 100%;
    }

    footer ul {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(2, auto);
        gap: 5px 20px;
        padding-left: 15% !important;
        padding-right: 15% !important;
        margin: 5px;
        list-style: none;
        align-items: center;
        justify-content: center;
    }

    footer ul a {
        color: black !important;
        text-decoration: none;
    }
}

