@font-face {
    font-family: "DB HelviticaX";
    src: url('assets/fonts/DB Helvethaica X.ttf') format('truetype');
}
@viewport {
    width: device-width;
    zoom: 1.0;
}
.contain{
    margin-left: 19%;
    margin-right: 19%;
}
.main-bg{
    width: 100%;
    height: 100vh;
    background:#002c73;
    position: relative;
    z-index: 0;
}
.sub-main-bg {
    width: 100%;
    height: 40rem;
    background-color: #fff;
    clip-path: polygon(50% 5%, -5% 50%, 105% 50%);
    z-index: 0;
    position: absolute;
    top:16rem;
}
.bg-top-ab{
    top:35rem
}
.title-1{
    font-family: 'DB HelviticaX';
    color: white;
    font-style: italic;
    font-weight:900;
    position: relative;
}
.title-2{
    font-family: 'DB HelviticaX';
    color: white;
    font-weight:900;
}
.title-1 h1{
    font-size: 23rem;
    line-height: 15rem;

}
.title-1 h2{
    font-size: 7rem;
    line-height: 6px;
    left: -35px;
    position: absolute;
}
.title-2 h1{
    font-size: 6rem;
    line-height: 8rem;
    letter-spacing: 5px;
}
.title-2 h2{
    font-size: 3rem;
    line-height: 0;
    letter-spacing: 3px;
}
.title-2 h3{
    font-size: 1.5rem;
    line-height: 4rem;
    letter-spacing: 0.02rem;
}
.title-2 .btn-start .bg-btn{
    background: #fff;
    border-radius: 50px 20px 25px 17px;
    transform: skew(-20deg, 0deg);
}
.title-2 .btn-start span{
    color:#002c73 ;
    font-size: 2rem;
    position: absolute;
    left: 25%;
    top: 0;
}
.phone-top{
    position: absolute;
    left: 13rem;
    margin-top: 2rem;
}
.circle{
    background: #264180;
    background-image: -webkit-linear-gradient(bottom, #264180, #4078ba);
    background-image: -moz-linear-gradient(bottom, #264180, #4078ba);
    background-image: -ms-linear-gradient(bottom, #264180, #4078ba);
    background-image: -o-linear-gradient(bottom, #264180, #4078ba);
    background-image: -webkit-gradient(to top, #264180, #4078ba);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #FFFFFF;
    padding: 0px;
    -webkit-box-shadow: inset 0 9px 7px 0 #c6d9ed;
    -moz-box-shadow: inset 0 9px 7px 0 #c6d9ed;
    box-shadow: inset 0 9px 7px 0 #c6d9ed;
    border: solid #fff 2px;
    text-decoration: none;
    display: inline-block;;
    text-align: center;
    font-family: "DB HelviticaX";
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.circle-1{
    width: 7rem;
    height: 7rem;
    font-size: 2rem;
}
.circle-2{
    width: 7rem;
    height: 7rem;
    font-size: 1.8rem;
}
.circle-3{
    width: 9rem;
    height: 9rem;
    font-size: 1.8rem;
}
.circle .text-title{
    font-size: 2.5rem;
    line-height: 3rem;
}
.circle .text-sub{
    font-size: 1.2rem;
    line-height: 0rem;
}
.circle-left-1{
    position: absolute;
    top:10rem;
    left:1rem;
    z-index: 1;
}
.circle-left-2{
    position: absolute;
    top: 7rem;
    left: 9rem;
    z-index: 1;
}
.circle-left-3{
    position: absolute;
    top: 3rem;
    left: 17rem;
    z-index: 1;
}
.back-circle-l-1{
    top:12rem;
    left:0rem;
    width: 12rem;
 }
.back-circle-l-2{
    top:9rem;
    left:8rem;
    width: 12rem;
 }
.back-circle-l-3{
    top:7rem;
    left:17rem;
    width: 12rem;
 }
.circle-right-1{
    position: absolute;
    top: 10rem;
    right: 1rem;
    z-index: 1;
}
.circle-right-2{
    position: absolute;
    top: 7rem;
    right: 9rem;
    z-index: 1;
}
.circle-right-3{
    position: absolute;
    top: 3rem;
    right: 17rem;
    z-index: 1;
}
.back-circle-r-1{
    top: 7rem;
    right: 14rem;
    width: 12rem;
}
.back-circle-r-2{
    top: 9rem;
    right: 5rem;
    width: 12rem;
}
.back-circle-r-3{
    top: 12rem;
    right: -3rem;
    width: 12rem;
}
.clound-bg{
    z-index: 1;
}
.card-pricing .card-detail{
    font-family: 'DB HelviticaX';
    font-size: 1.9rem;
}
.block-card{
    font-family: 'DB HelviticaX';
}
.top-l-bg{
    background: url('assets/top_l_bg.png');
    background-repeat: no-repeat;
    width: 100%;
    height: 100vh;
}
.top-r-bg{
    background: url('assets/top_r_bg.png');
    background-repeat: no-repeat;
    background-position: right;
    width: 100%;
    height: 100vh;
}
.api-detail{
    font-family: 'DB HelviticaX';
    font-size: 1.9rem;
}
/* Section 2 */
.section2{
    margin-top: 35rem;
}
.bg-section-2{
    width: 100%;
    height: 650px;
    max-height: 800px;
    background: #002c73;
    clip-path: polygon(0% 20%, 120% 0%, 100% 80%, 0% 100%);
    z-index:-1;
}
.bg-section-2-l{
    background: url('assets/section2_bg_l.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left;
    width: 20%;
    height: 100%;
    position: absolute;
    left: 0;
    z-index: 0;
}
.bg-section-2-c{
    background: url('assets/section2_bg_c.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom;
    width: 100%;
    height: 800px;
    position: absolute;
    z-index: 0;
}
.bg-section-2-r{
    background: url('assets/section2_bg_r.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
    width: 20%;
    height: 100%;
    position: absolute;
    right: 0;
    z-index: 0;
}
.section2 .left-content{
    font-family: 'DB HelviticaX';
}
section.price{
    margin-bottom: 5rem;
}
.bg-price-l-1{
    background: url('assets/section_price_l_1.png');
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 50vh;
    z-index: 0;
}
.bg-price-l-2{
    background: url('assets/section_price_l_2.png');
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 50vh;
    z-index: 0;
}
.bg-price-r-1{
    background: url('assets/section_price_r_1.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
    width: 100%;
    height: 50vh;
    z-index: 0;
}
.bg-price-r-2{
    background: url('assets/section_price_r_2.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
    width: 100%;
    height: 50vh;
    z-index: 0;
}
.btn-pricing{
    font-family: 'DB HelviticaX';
    font-weight: bold;
}
.card-pricing{
    font-family: 'DB HelviticaX';
    border-radius: 25px;
    background-color: rgb(255, 255, 255);
    box-shadow: 0px 0px 22.8px 1.2px rgba(0, 0, 0, 0.23);
}
.card-pricing .card-detail{
    font-size: 1.5rem;
}
.ribbon{
    --f: 15px;
    width: 180px;
    height: 50px;
    position: absolute;
    inset: var(--t) calc(-1* var(--f)) auto auto;
    padding: 0 5px var(--f) calc(10px + var(--r));
    clip-path: polygon(100% calc(100% - var(--f)), 100% 100%, calc(100% - var(--f)) calc(100% - var(--f)), var(--f) calc(100% - var(--f)), 0 100%, 0 calc(100% - var(--f)), 999px calc(100% - var(--f) - 999px), calc(100% - 999px) calc(100% - var(--f) - 999px));
    background: #002c73;
    box-shadow: 0 calc(-1* var(--f)) 0 inset #7e8ca1;
    transform: translate(24.5rem, 1rem) rotate(45deg);
}
.menu-footer{
    font-family: 'DB HelviticaX';
    font-size: 1.3rem;
    line-height: 1.2rem;
}
.fadein-bt.active {
    opacity: 0;
    animation: fadein-bt 1s ease forwards;
}
.fadein-l.active{
    opacity: 0;
    animation: fadein-l 1s ease forwards;
}
.fadein-r.active{
    opacity: 0;
    animation: fadein-r 1s ease forwards;
}
.fade{
    opacity: 0;
    animation:fade 2s ease forwards;
}
.delay-1.active{
    animation-delay: 0.5s;
}
.delay-2.active{
    animation-delay: 1s;
}
.delay-3.active{
    animation-delay: 1.5s;
}
.q-title{
    font-size: 5.5rem;
}
.img-footer {
    background: url(assets/img_footer.png);
    height: 150px;
    width: 100%;
    left: 250px;
    top: -15rem;
    background-size: contain;
    background-repeat: no-repeat;
}
.detail{
    margin-top: 45%;
}
/* Animation */
@keyframes fadein-bt {
    0% {
      opacity: 0;
      transform: translateY(50px); 
    }
    100% {
      opacity: 1;
      transform: translateY(0); 
    }
}
@keyframes fadein-l {
    0% {
      opacity: 0;
      transform: translateX(-50px); 
    }
    100% {
      opacity: 1;
      transform: translateX(0); 
    }
}
@keyframes fadein-r {
    0% {
      opacity: 0;
      transform: translateX(50px); 
    }
    100% {
      opacity: 1;
      transform: translateX(0); 
    }
}
@keyframes fade {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}
/* Responsive */
@media only screen and (width:1920px) {
    .ribbon{
        transform: translate(25.8rem, 1rem) rotate(45deg);
    }
}
@media only screen and (width:1440px) {
    .contain{
        margin-left: 10%;
        margin-right: 10%;
    }
    .section2{
        margin-top: 45rem;
    }
    .bg-section-2{
        height: 550px;
    }
    .q-title {
        font-size: 4rem;
        font-weight: bold;
    }
    .ribbon{
        transform: translate(24.8rem, 1rem) rotate(45deg);
    }
}
@media only screen and (width:1366px){
    .contain{
        margin-left: 10%;
        margin-right: 10%;
    }
   
    .title-1 h1{
        font-size: 18rem;
    }
    .title-1 h2{
        font-size: 6rem;
    }
    .title-2 h1{
        font-size: 6rem;
    }
    .phone-top{
        width: 55%;
        left: 12rem;
    }
    .ribbon{
        transform: translate(23rem, 33%) rotate(45deg);
    }
    .section2{
        margin-top: 50rem;
    }
    .q-title{
        font-size: 4rem;
    }
   
}
@media only screen and (width:1280px){
    .contain{
        margin-left: 10%;
        margin-right: 10%;
    }
    .sub-main-bg{
        top:15rem;
    }
    .title-1 h1{
        font-size: 18rem;
    }
    .title-1 h2{
        font-size: 6rem;
    }
    .title-2 h1{
        font-size: 6rem;
    }
    .phone-top{
        width: 45%;
        left: 15rem;
        top: 5vh;
    }
    .ribbon{
        transform:translate(20.8rem, 33%) rotate(45deg);
    }
    .bg-section-2{
        height: 560px;
    }
    .section2 {
        margin-top: 45rem;
    }
    .q-title{
        font-size: 4rem;
    }
    .img-footer {
        right: -20vh;
    }
}
@media only screen and (min-width:320px) and (max-width:375px){
    body{
        width: fit-content;
    }
    .sub-main-bg {
        clip-path: polygon(50% 5%, -45% 54%, 150% 54%)
    }
    .contain {
        margin-left: 0%;
        margin-right: 0%;
    }
    .top-text{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .ribbon{
        transform: translate(282%, 30%) rotate(45deg);
    }
    .title-1 h1 {
        font-size: 15rem;
        line-height: 11rem;
    }
    .title-1 h2 {
        font-size: 4rem;
        line-height: 6px;
        left: 0px;
    }
    .title-2 h1{
        font-size: 4rem;
    }
    .title-2 h2 {
        font-size: 2.5rem;
    }
    .title-2 h3{
        font-size: 1.2rem;
    }
    .phone-top {
        left: 9rem;
        margin-top: 9vh;
    }
    .phone-top img{
        width:65%;
    }
    .detail{
        margin-top: 40%;
        background: #fff;
    }
    .circle-1 {
        width: 6rem;
        height: 6rem;
    }
    .circle-2 {
        width: 6rem;
        height: 6rem;
    }
    .circle-3 {
        width: 7rem;
        height: 7rem;
    }
    .circle-left-1 {
        top: 10rem;
        left: 1rem;
    }
    .circle-left-2{
        top:6rem;
        left: 105px;
    }
    .circle-left-3{
        top:1rem;
        left: 205px;
    }
    .circle-right-1 {
        top: 10rem;
        right: 1rem;
    }
    .circle-right-2 {
        top: 6rem;
        right: 7rem;
    }
    .circle-right-3 {
        top: 1rem;
        right: 13rem;
    }
    .back-circle-l-1 {
        top: 12rem;
        left: 0rem;
        width: 8rem;
    }
    .back-circle-l-2 {
        top: 8rem;
        left: 6rem;
        width: 8rem;
    }
    .back-circle-l-3 {
        top: 4rem;
        left: 12rem;
        width: 8rem;
    }
    .back-circle-r-1 {
        top: 4rem;
        right: 13rem;
        width: 8rem;
    }
    .back-circle-r-2 {
        top: 8rem;
        right: 6rem;
        width: 8rem;
    }
    .back-circle-r-3 {
        top: 12rem;
        right: 0rem;
        width: 8rem;
    }
    .q-title{
        font-size: 3.5rem;
    }
    .card-pricing .card-detail{
        font-size: 2rem;
        padding: 15px;
        margin-top: 4rem;
    }
    .left-content{
        padding-left: 3rem;
        padding-top: 2rem;
    }
    .bg-section-2 {
        height: 550px;
    }
    .section2{
        margin-top: 38rem;
    }
}
@media only screen and (min-width:376px) and (max-width:409px){
    body{
        width: fit-content;
    }
    .sub-main-bg {
        clip-path: polygon(50% 5%, -45% 54%, 150% 54%)
    }
    .contain {
        margin-left: 0%;
        margin-right: 0%;
    }
    .top-text{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .ribbon{
        transform: translate(282%, 30%) rotate(45deg);
    }
    .title-1 h1 {
        font-size: 15rem;
        line-height: 11rem;
    }
    .title-1 h2 {
        font-size: 4rem;
        line-height: 6px;
        left: 0px;
    }
    .title-2 h1{
        font-size: 4rem;
    }
    .title-2 h2 {
        font-size: 2.5rem;
    }
    .title-2 h3{
        font-size: 1.2rem;
    }
    .phone-top {
        left: 9rem;
        margin-top: 9vh;
    }
    .phone-top img{
        width:65%;
    }
    .detail{
        margin-top: 40%;
        background: #fff;
    }
    .circle-1 {
        width: 6rem;
        height: 6rem;
    }
    .circle-2 {
        width: 6rem;
        height: 6rem;
    }
    .circle-3 {
        width: 7rem;
        height: 7rem;
    }
    .circle-left-1 {
        top: 10rem;
        left: 1rem;
    }
    .circle-left-2{
        top:6rem;
        left: 105px;
    }
    .circle-left-3{
        top:1rem;
        left: 205px;
    }
    .circle-right-1 {
        top: 10rem;
        right: 1rem;
    }
    .circle-right-2 {
        top: 6rem;
        right: 7rem;
    }
    .circle-right-3 {
        top: 1rem;
        right: 13rem;
    }
    .back-circle-l-1 {
        top: 12rem;
        left: 0rem;
        width: 8rem;
    }
    .back-circle-l-2 {
        top: 8rem;
        left: 6rem;
        width: 8rem;
    }
    .back-circle-l-3 {
        top: 4rem;
        left: 12rem;
        width: 8rem;
    }
    .back-circle-r-1 {
        top: 4rem;
        right: 13rem;
        width: 8rem;
    }
    .back-circle-r-2 {
        top: 8rem;
        right: 6rem;
        width: 8rem;
    }
    .back-circle-r-3 {
        top: 12rem;
        right: 0rem;
        width: 8rem;
    }
    .q-title{
        font-size: 3.5rem;
    }
    .card-pricing .card-detail{
        font-size: 2rem;
        padding: 15px;
        margin-top: 4rem;
    }
    .left-content{
        padding-left: 3rem;
        padding-top: 2rem;
    }
    .bg-section-2 {
        height: 550px;
    }
    .section2{
        margin-top: 30rem;
    }
}
@media only screen and (min-width:410px) and (max-width:414px){
    body{
        width: fit-content;
    }
    .sub-main-bg {
        clip-path: polygon(50% 5%, -45% 54%, 150% 54%)
    }
    .contain {
        margin-left: 0%;
        margin-right: 0%;
    }
    .top-text{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .ribbon{
        transform: translate(282%, 30%) rotate(45deg);
    }
    .title-1 h1 {
        font-size: 15rem;
        line-height: 11rem;
    }
    .title-1 h2 {
        font-size: 4rem;
        line-height: 6px;
        left: 0px;
    }
    .title-2 h1{
        font-size: 4rem;
    }
    .title-2 h2 {
        font-size: 2.5rem;
    }
    .title-2 h3{
        font-size: 1.2rem;
    }
    .phone-top {
        left: 9rem;
        margin-top: 9vh;
    }
    .phone-top img{
        width:65%;
    }
    .detail{
        margin-top: 40%;
        background: #fff;
    }
    .circle-1 {
        width: 6rem;
        height: 6rem;
    }
    .circle-2 {
        width: 6rem;
        height: 6rem;
    }
    .circle-3 {
        width: 7rem;
        height: 7rem;
    }
    .circle-left-1 {
        top: 10rem;
        left: 1rem;
    }
    .circle-left-2{
        top:6rem;
        left: 105px;
    }
    .circle-left-3{
        top:1rem;
        left: 205px;
    }
    .circle-right-1 {
        top: 10rem;
        right: 1rem;
    }
    .circle-right-2 {
        top: 6rem;
        right: 7rem;
    }
    .circle-right-3 {
        top: 1rem;
        right: 13rem;
    }
    .back-circle-l-1 {
        top: 12rem;
        left: 0rem;
        width: 8rem;
    }
    .back-circle-l-2 {
        top: 8rem;
        left: 6rem;
        width: 8rem;
    }
    .back-circle-l-3 {
        top: 4rem;
        left: 12rem;
        width: 8rem;
    }
    .back-circle-r-1 {
        top: 4rem;
        right: 13rem;
        width: 8rem;
    }
    .back-circle-r-2 {
        top: 8rem;
        right: 6rem;
        width: 8rem;
    }
    .back-circle-r-3 {
        top: 12rem;
        right: 0rem;
        width: 8rem;
    }
    .q-title{
        font-size: 3.5rem;
    }
    .card-pricing .card-detail{
        font-size: 2rem;
        padding: 15px;
        margin-top: 4rem;
    }
    .left-content{
        padding-left: 3rem;
        padding-top: 2rem;
    }
    .bg-section-2 {
        height: 550px;
    }
}
@media only screen and (min-width:415px) and (max-width:430px){
    body{
        width: fit-content;
    }
    .sub-main-bg {
        clip-path: polygon(50% 5%, -45% 54%, 150% 54%)
    }
    .contain {
        margin-left: 0%;
        margin-right: 0%;
    }
    .top-text{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .ribbon{
        transform: translate(282%, 30%) rotate(45deg);
    }
    .title-1 h1 {
        font-size: 15rem;
        line-height: 11rem;
    }
    .title-1 h2 {
        font-size: 4rem;
        line-height: 6px;
        left: 0px;
    }
    .title-2 h1{
        font-size: 4rem;
    }
    .title-2 h2 {
        font-size: 2.5rem;
    }
    .title-2 h3{
        font-size: 1.2rem;
    }
    .phone-top {
        left: 9rem;
        margin-top: 9vh;
    }
    .phone-top img{
        width:65%;
    }
    .detail{
        margin-top: 40%;
        background: #fff;
    }
    .circle-1 {
        width: 6rem;
        height: 6rem;
    }
    .circle-2 {
        width: 6rem;
        height: 6rem;
    }
    .circle-3 {
        width: 7rem;
        height: 7rem;
    }
    .circle-left-1 {
        top: 10rem;
        left: 1rem;
    }
    .circle-left-2{
        top:6rem;
        left: 105px;
    }
    .circle-left-3{
        top:1rem;
        left: 205px;
    }
    .circle-right-1 {
        top: 10rem;
        right: 1rem;
    }
    .circle-right-2 {
        top: 6rem;
        right: 7rem;
    }
    .circle-right-3 {
        top: 1rem;
        right: 13rem;
    }
    .back-circle-l-1 {
        top: 12rem;
        left: 0rem;
        width: 8rem;
    }
    .back-circle-l-2 {
        top: 8rem;
        left: 6rem;
        width: 8rem;
    }
    .back-circle-l-3 {
        top: 4rem;
        left: 12rem;
        width: 8rem;
    }
    .back-circle-r-1 {
        top: 4rem;
        right: 13rem;
        width: 8rem;
    }
    .back-circle-r-2 {
        top: 8rem;
        right: 6rem;
        width: 8rem;
    }
    .back-circle-r-3 {
        top: 12rem;
        right: 0rem;
        width: 8rem;
    }
    .q-title{
        font-size: 3.5rem;
    }
    .card-pricing .card-detail{
        font-size: 2rem;
        padding: 15px;
        margin-top: 4rem;
    }
    .left-content{
        padding-left: 3rem;
        padding-top: 2rem;
    }
    .bg-section-2 {
        height: 550px;
    }
}

