@media only screen and (min-width: 1400px) {
    .container,
    .container-lg,
    .container-md{
        max-width: 1140px;
    }
}
body{
    font-family: 'Raleway', sans-serif;
    color: #000;
    overflow: hidden auto !important;
}
h1, h2, h3, h4, h5, h6{
    margin: 0;
}
h2{
    font-weight: 500;
    font-size: 36px;
}
h3{
    font-weight: 500;
    font-size: 28px;
}
h4{
    font-weight: 600;
    font-size: 18px;
    color: #707070;
}
h5{
    font-weight: 400;
    font-size: 16px;
    color: #707070;
}
.swiper-wrapper{
    z-index: 0;
}
.number{
    font-family: Arial;
}
.form-control::placeholder{ /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #60B2DE;
    opacity: 1; /* Firefox */
}
.form-control:-ms-input-placeholder{ /* Internet Explorer 10-11 */
    color: #60B2DE;
}
.form-control::-ms-input-placeholder{ /* Microsoft Edge */
    color: #60B2DE;
}
.main_btn{
    background: linear-gradient(90deg, #1326C4 0%, #21B0FB 100%);
    color: #fff;
    border-radius: 15px;
    padding: 14px 30px 12px;
    border: none;
    width: 100%;
    margin-top: 5px;
    font-size: 16px;
}
.main_btn:hover{
    background: linear-gradient(90deg, #FF4700 0%, #FFE200 100%);
    color: #fff;
}
.border_btn{
    box-shadow: inset 0px 3px 6px #00000029, 0px 3px 6px #00000029;
    border: 4px solid #FFFFFF;
    border-radius: 10px;
    font-size: 16px;
    color: #fff;
    padding: 12px 30px 11px;
}
.border_btn:hover{
    color: #fff;
}
#popup .main_btn{
    border-radius: 10px;
    border: 4px solid #FFFFFF;
}
.blue_btn{
    color: #fff;
    background: linear-gradient(90deg, #001D94 0%, #00EEF7 100%);
}
.blue_btn:hover{
    background: linear-gradient(90deg, #0022FF 0%, #00F6FF 100%);
}
.green_btn{
    color: #fff;
    background: linear-gradient(90deg, #006303 0%, #2CE21F 100%);
}
.green_btn:hover{
    background: linear-gradient(90deg, #06A701 0%, #00FF5D 100%);
}
.red_btn{
    color: #fff;
    background: linear-gradient(90deg, #810000 0%, #FB2121 100%);
}
.red_btn:hover{
    background: linear-gradient(90deg, #EC0000 0%, #FF5050 100%);
}
#banner{
    padding-top: 35px;
    margin-bottom: 20px;
    background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.85) 25%, rgba(255,255,255,0.4) 35%, rgba(255,255,255,0) 40%),
                linear-gradient(90deg, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0.4) 25%, rgba(255,255,255,0) 50%),
                url(/assets/images/hkhi_2022/images-banner2.jpg) no-repeat center top;
    background-position-y:  -30px!important;
    background-size: auto 97%!important;
}
#banner h1{
    font-weight: 400;
    font-size: 36px;
    margin-top: 10px;
    padding-bottom: 10px;
    position: relative;
    max-width: 370px;
}
#banner h1 strong{
    color: #25598B;
}
.forms{
    border-radius: 40px;
    box-shadow: inset 0px 0px 15px #00000029;
    background-color: #fff;
    overflow: hidden;
}
.forms .title{
    padding: 35px 10px 23px 35px;
    background-color: #25598B;
    box-shadow: inset 0px 0px 15px #00000029;
}
.forms .title h2{
    font-size: 28px;
    font-weight: 700;
    color: #fff;
}
.forms .title h3{
    color: #fff;
    font-weight: 700;
}
#banner .title .slide{
    display: none;
}
.forms .title h3 span{
    color: #00A5FF;
}
.forms form{
    padding: 25px 40px 35px;
}
.form form input[type="email"],
.form form input[type="text"],
.form form input[type="tel"],
.form form select, .form form select:focus, .form form select option{
    border-color: #A2D2EC;
    font-size: 18px;
    color: #1D91D0;
    padding: 11px 10px 9px 25px;
    border-radius: 15px;
    box-shadow: inset 0px 0px 4px #A2D2ECAD;;
    background-color: #FAFCFF;
    margin-bottom: 15px;
}

#popup .form form input[type="email"],
#popup .form form input[type="text"],
#popup .form form input[type="tel"],
#popup .form form select, #popup .form form select:focus, #popup .form form select option{
    border-color: #1D91D0;
    border-radius: 8px;
    background-color: #F8FDFF;
    padding: 10px 18px 9px;
    font-size: 16px;
    margin-bottom: 10px;
}
.form form select{
    cursor: pointer;
}
.form form .checkboxLabel{
    width: calc(100% - 25px);
    vertical-align: middle;
    color: #1d91d0;
    margin-left: 5px;
}
.form form .ppQuoteFormField{
    display: none;
}
#content .plans{
    padding-top: 20px;
}
#content .plans > div{
    transition: transform 0.5s;
}
#content .plans > div:hover{
    transform: scale(1.05);
}
#content .plans .topbar{
    height: 25px;
    border-radius: 25px 25px 0 0;
    box-shadow: 0px 3px 6px #00000029;
}
.blue_bar{
    background-color: #1A6CBB;
}
.green_bar{
    background-color: #56B648;
}
.red_bar{
    background-color: #E91846;
}
#content .plans .content{
    position: relative;
    background-color: #fff;
    padding: 40px 35px;
    border-radius: 0 0 25px 25px;
    box-shadow: 0px 3px 6px #00000029;
    margin-bottom: 65px;
}
#content .plans .content img{
    margin-bottom: 30px;
    height: 74px;
}
#content .plans .content .price{
    font: 700 42px 'Roboto';
    color: #1D91D0;
    margin-bottom: 10px;
}
#content .plans .content .price sup{
    font-size: 22px;
}
#content .plans .content .icon{
    width: 35px;
    height: 35px;
    display: inline-block;
    background: url(/assets/images/hkhi_2022/icon-cross.png);
    margin: 10px 0 4px;
}
#content .plans .content .icon.true_1{
    background: url(/assets/images/hkhi_2022/icon-tick.png);
}
#content .plans .content p{
    color: #707070;
    padding: 0 10px;
}
#content .plans .content .plans_btn_wrapper{
    position: absolute;
    bottom: -22.5px;
    left: 0;
    width: 100%;
}
#content .plans .content .plans_btn{
    border-radius: 30px;
}
#content .extra_btn{
    margin-bottom: 80px;
}
#content .extra_btn button{
    border-radius: 30px;
}
#slideup{
    display: none;
    padding-bottom: 40px;
}
#slideup .title .main{
    display: none;
}
/*#content .desc{
    margin-top: 42.5px;
    position: relative;
    background: url(/assets/images/hkhi_2022/images-1.jpg) no-repeat left center;
    padding: 62.5px 0;
}
#content .desc:before{
    content: "";
    display: block;
    width: 50vw;
    height: 100%;
    background-color: #25598B;
    position: absolute;
    right: 50%;
    top: 0;
    z-index: -1;
}
#content .desc .content{
    padding: 55px 50px;
    box-shadow: 0px 3px 6px #00000040;
    background-color: #fff;
}
#content .desc .content p{
    margin: 20px 0 0;
}
#content .desc .content p span{
    color: #1D91D0;
}
#content .number_count{
    padding: 90px 0 55px;
}
#content .number_count > div{
    margin-bottom: 35px;
}
#content .number_count .number{
    color: #1D91D0;
    font-size: 45px;
    font-weight: 700;
    font-family: 'Roboto', sans-serif;
    line-height: 60px;
}
#content .number_count .number .counting{
    display: inline;
}
#map{
    background: url(/assets/images/hkhi_2022/images-backgorund.jpg) no-repeat center;
    background-attachment: fixed;
    background-size: cover;
    padding-bottom: 65px;
}
#map > .container-md{
}
#map > .container-md > .row{
    background-color: #fff;
    padding: 55px 50px;
}
#map h2{
    margin-bottom: 25px;
}
#map .content_col .content{
    padding: 0 25px;
    max-width: 350px;
    border: 1px solid #A2D2EC;
    height: calc(100% - 190px);
    font-family: Arial;
}
#map .content_col .content h6{
    font-size: 18px;
    color: #1D91D0;
    font-weight: 700;
}
#map .content_col .content .address{
    font-size: 16px;
    color: #707070;
}
#map .content_col .content .contact{
    margin: 0;
    font-size: 14px;
    color: #707070;
}
#map .map_col .map{
    position: relative;
}
#map .map_col .map img{
    width: 100%;
}
#map .map_col .map .dot{
    width: 13px;
    height: 13px;
    border-radius: 100%;
    background: #1D91D0 0% 0% no-repeat padding-box;
    border: 2px solid rgba(29, 145, 208, 0.2);
    position: absolute;
    transition: all .15s;
}
#map .map_col .map .dot.selected{
    background: #FF9929 0% 0% no-repeat padding-box;
    border: 2px solid rgba(255, 153, 41, 0.2);
}
#map .map_col .map .dot.hk{
    top: 50%;
    left: 78%;
}
#map .map_col .map .dot.sh{
    top: 43%;
    left: 79%;
}
#map .map_col .map .dot.bj{
    top: 38%;
    left: 77.5%;
}
#map .map_col .map .dot.bk{
    top: 55%;
    left: 73.5%;
}
#map .map_col .map .dot.sg{
    top: 62%;
    left: 75%;
}
#map .map_col .map .dot.uae{
    top: 48%;
    left: 61.5%;
}
#map .map_col .map .dot.uk{
    top: 30%;
    left: 46%;
}
#map .map_col .map .dot.let{
    top: 52.5%;
    left: 19%;
}
#map .map_col .map .dot.ph{
    top: 57.5%;
    left: 80%;
}
#map .map_col .map .dot.usa{
    top: 43%;
    left: 13.5%;
}
#map .map_col .map .dot.my{
    top: 59.5%;
    left: 74%;
}
#map .map_col .loc_btns{
    overflow: hidden;
    margin-top: 10px;
    position: relative;
}
#map .map_col .loc_btns:after{
    content: "";
    display: block;
    width: 20%;
    height: 100%;
    background: linear-gradient(270deg, #FFFFFF 0%, #FFFFFF 24%, #FFFFFF00 65%, #FFFFFF00 100%);
    position: absolute;
    right: 0;
    top: 0;
    pointer-events: none;
}
#map .map_col .loc_btns .btn{
    background-color: #1D91D0;
    color: #fff;
    cursor: pointer;
    border-radius: 15px;
    padding: 3px 13px 2px;
}
#map .map_col .loc_btns .btn.selected{
    background-color: #FF9929;
}
#map .map_col .loc_btns .placeholder{
    width: 10%;
}
#award{
    padding: 75px 0 45px;
}
#award h2{
    padding-bottom: 35px;
}
#award .award_slides{
    
}
#award .award_slides .award{
    padding-right: 22.5px;
}
#award .award_slides .award > img{
    width: 100%;
}
#award .award_slides .award .content{
    padding: 35px 15px 20px;
}
#award .award_slides .award .content p{
    padding: 0 10px;
    margin-top: 10px;
}
#award .award_slides .award .content .year{
    color: #1D91D0;
    font-size: 24px;
    font-weight: 700;
    position: relative;
}
#award .award_slides .award .content .year:before{
    content: "";
    display: block;
    width: calc(100% - 65px);
    height: 20px;
    border-bottom: 2px solid #1D91D0;
    border-right: 2px solid #1D91D0;
    position: absolute;
    right: 0;
}
#award .award_slides .award .content .year:after{
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    border-radius: 100%;
    background: #1D91D0;
    position: absolute;
    right: -5px;
    bottom: 10px;
}
#award .dotdotdot{
    display: inline-block;
    width: 0;
    height: 21px;
    border: 2px dashed #000;
    margin-bottom: 15px;
}
#award #bottom_cta{
    padding: 16px 117px;
}*/
footer{
    background-color: #015984;
    padding: 25px 0;
}
footer a,
footer a:focus,
footer a:hover{
    color: #fff;
    text-decoration: none;
    transition: opacity 0.3s;
}
footer a:hover{
    opacity: 0.8;
}
footer a:not(:first-child):before{
    content:"|";
    margin: 0 5px;
    color: #fff;
}
#popup{
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    z-index: 99;
}
#thankyou #popup{
    display: flex;
}
#thankyou #popup .popup_wrapper{
    height: 470px;
    background-color: #ffffff99;
}
#popup #overlay{
    position: fixed;
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    background-color: rgba(255, 255, 255, .5);
    z-index: 1000;
}
#popup .popup_wrapper{
    position: relative;
    z-index: 1001;
    width: 660px;
    box-shadow: 0px 3px 10px #00000029;
    border-radius: 10px;
    border: 1px solid #FFFFFF;
    padding: 30px 40px 40px;
}
#popup.step2 .popup_wrapper{
    /*width: 940px;*/
}
@supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
    #popup #overlay{
        background-color: transparent;
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);   
    }
    #popup .popup_wrapper{
        background-color: #ffffff95;
        backdrop-filter: blur(30px);
        -webkit-backdrop-filter: blur(30px);
    }
}
#popup .popup_wrapper .img{
    position: absolute;
    right: calc(50% + 30px);
    margin-top: 20px;
    width: 340px;
}
#popup.step2 .popup_wrapper .img{
    right: calc(50% + 90px);
}
#popup .popup_wrapper #popup_form .title{
    text-align: left !important;
    margin: 20px 0 30px;
}
#popup .popup_wrapper #popup_form .title h2{
    font-size: 24px;
    color: #25598B;
}
#popup .popup_wrapper #popup_form .title h3{
    font-size: 18px;
    color: #25598B;
}
#popup .close {
  position: absolute;
  right: 32px;
  top: 32px;
  width: 32px;
  height: 32px;
  opacity: 0.3;
}
#popup .close:hover {
  opacity: 1;
}
#popup .close:before, .close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 2px;
  background-color: #333;
}
#popup .close:before {
  transform: rotate(45deg);
}
#popup .close:after {
  transform: rotate(-45deg);
}
/*Desktop only*/
@media only screen and (min-width: 992px) {
    #banner{
        position: relative;
    }
    #banner header img{
        max-height: 58px;
    }
    #banner #banner_form{
        max-width: 400px;
        position: relative;
        z-index: 2;
    }
    #banner .mouse{
        position: absolute;
        bottom: 20px;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        z-index: 1;
    }
    #banner .mouse p{
        color: #fff;
        margin: 5px 0 0;
        animation: colorText 5s ease-out infinite, nudgeText 5s ease-out infinite;
    }
    #banner .mouse .icon{
        background: #4e5559 linear-gradient(transparent 0%, transparent 50%, #ffffff 50%, #ffffff 100%);
        position: relative;
        width: 27px;
        height: 45px;
        border-radius: 100px;
        background-size: 100% 200%;
        animation: colorSlide 5s linear infinite, nudgeMouse 5s ease-out infinite;
    }
    #banner .mouse .icon:before,
    #banner .mouse .icon:after{
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
    }
    #banner .mouse .icon:before{
        width: 23px;
        height: 41px;
        background-color: #222a30;
        border-radius: 100px;
    }
    #banner .mouse .icon:after{
        background-color: #ffffff;
        width: 5px;
        height: 5px;
        border-radius: 100%;
        -webkit-animation: trackBallSlide 5s linear infinite;
        animation: trackBallSlide 5s linear infinite;
    }
    /*#map .map_col{
        max-width: calc(100% - 374px);
    }
    #map .content_col .content{
        max-width: 350px;
    }*/
    #slideup{
        position: relative;
    }
    #slideup:before{
        content: "";
        display: block;
        width: 100%;
        height: 50%;
        background-color: #015984;
        position: absolute;
        top: 50%;
        z-index: -1;
    }
    #slideup .field_wrapper{
        display: grid;
        grid-template-columns: 50% 50%;
        gap: 0px 10px;
    }
}
@media only screen and (min-width: 768px) {
    /*#content .desc .d-flex{
        height: 550px;
    }*/
}
/*Mobile only*/
@media only screen and (max-width: 992px) {
    #banner{
        background: none;
        padding: 0;
    }
    #banner .header-wrapper{
        position: absolute;
    }
    #banner header img{
        padding: 35px 30px 0;
    }
    #banner h1{
        padding: 0 40px 25px;
    }
    #banner h1:after{
        content: "";
        display: block;
        width: 30%;
        height: 8.5px;
        background-color: #1D91D0;
        position: absolute;
        top: 100%;
    }
    #banner #banner_form:before{
        content: "";
        display: block;
        width: 100%;
        height: 108vw;
        background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.85) 35%, rgba(255,255,255,0.5) 45%, rgba(255,255,255,0) 50%),
                    linear-gradient(180deg, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0.4) 25%, rgba(255,255,255,0) 50%),
                    url(/assets/images/hkhi_2022/images-banner-mobile.jpg) no-repeat bottom;
        background-size: 100%;
    }
    #banner .mouse{
        display: none;
    }
    .forms{
        box-shadow: none;
        border-radius: 0;
        box-shadow: 0px 3px 6px #00000029;
        margin-top: 0;
    }
    /*#map {
        padding-bottom: 50px;
    }
    #map .content_col {
        margin-top: 20px;
    }
    #map .content_col #loc_img{
        max-width: 100%;
    }
    #map .content_col .content{
        padding: 10px 25px;
        height: auto;
    }
    #content .number_count h3{
        text-transform: uppercase;
    }*/
}
@media only screen and (max-width: 768px) {
    h2{
        font-size: 24px;
    }
    h3{
        font-weight: 400;
        font-size: 18px;
        color: #707070;
    }
    h4{
        font-weight: 600;
        font-size: 18px;
        color: #707070;
    }
    h5{
        font-weight: 400;
        font-size: 16px;
        color: #707070;
    }
    .container-md .row > *{
        padding-left: 30px;
        padding-right: 30px;
    }
    #banner #banner_form:before{
        height: calc(108vw + 200px);
        max-height: 90vh;
        background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.85) 45%, rgba(255,255,255,0.5) 55%, rgba(255,255,255,0) 60%),
                    linear-gradient(180deg, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0.4) 25%, rgba(255,255,255,0) 60%),
                    url(/assets/images/hkhi_2022/images-banner-mobile.jpg) no-repeat bottom;
        background-size: 120%;
    }
    #banner header img{
        width: 100%;
        max-width: 260px;
    }
    #banner h1{
        margin: 25px 0 45px;
        font-size: 36px;
    }
    #banner h1:after{
        height: 10px;
        width:10%;
    }
    .forms .title {
        padding: 25px 20px;
    }
    .forms .title h2{
        font-size: 24px;
        text-align: center;
    }
    .forms .title h3{
        font-size: 18px;
        font-weight: 500;
        text-align: center;
    }
    .forms form{
        padding: 30px;
    }
    #content .extra_btn{
        margin-bottom: 50px;
    }
    /*#content .plans {
        padding-top: 20px;
    }
    #content .desc{
        padding: 220px 0 0;
        background: url(/assets/images/hkhi_2022/images-1.jpg) no-repeat 20% top;
        background-size: 130vw;
        margin-top: 162.5px;
    }
    #content .desc:before{
        width: 100vw;
        height: 33vw;
        right: 0;
        top: -120px;
    }
    #content .desc .content{
        padding: 40px 15px;
        text-align: center;
    }
    #content .number_count{
        padding: 50px 0 0;
    }
    #content .number_count .number{
        font-size: 32px;
    }
    #content .number_count > div{
        text-align: center;
    }
    #content .number_count h3{
        color: #000;
        font-weight: 500;
    }
    #map > .container-md > .row{
        padding: 8px;
        margin: 0 15px;
    }
    #map > .container-md .col{
        padding-left: 0;
        padding-right: 0;
    }
    #map .map_col .map .dot{
        width: 9px;
        height: 9px;
    }
    #map .map_col .loc_btns .btn{
        padding: 0 13px;
    }
    #map .map_col .loc_btns::after{
        width: 10%;
    }
    #award{
        padding: 75px 15px 45px;
    }
    #award #bottom_cta{
        border-radius: 15px;
    }
    #award #bottom_cta{
        padding: 16px;
        width: 100%;
    }*/
    footer{
        font-size: 12px;
        text-align: center;
    }
    footer img{
        margin-bottom: 30px;
        width: 50vw;
    }
    footer p{
        margin-bottom: 10px;
    }
}

@keyframes colorSlide {
  0% {
    background-position: 0% 100%;
  }
  20% {
    background-position: 0% 0%;
  }
  21% {
    background-color: #4e5559;
  }
  29.99% {
    background-color: #ffffff;
    background-position: 0% 0%;
  }
  30% {
    background-color: #4e5559;
    background-position: 0% 100%;
  }
  50% {
    background-position: 0% 0%;
  }
  51% {
    background-color: #4e5559;
  }
  59% {
    background-color: #ffffff;
    background-position: 0% 0%;
  }
  60% {
    background-color: #4e5559;
    background-position: 0% 100%;
  }
  80% {
    background-position: 0% 0%;
  }
  81% {
    background-color: #4e5559;
  }
  90%, 100% {
    background-color: #ffffff;
  }
}
@keyframes trackBallSlide {
  0% {
    opacity: 1;
    transform: scale(1) translateY(-10px);
  }
  6% {
    opacity: 1;
    transform: scale(0.9) translateY(2.5px);
  }
  14% {
    opacity: 0;
    transform: scale(0.4) translateY(20px);
  }
  15%, 19% {
    opacity: 0;
    transform: scale(0.4) translateY(-10px);
  }
  28%, 29.99% {
    opacity: 1;
    transform: scale(1) translateY(-10px);
  }
  30% {
    opacity: 1;
    transform: scale(1) translateY(-10px);
  }
  36% {
    opacity: 1;
    transform: scale(0.9) translateY(2.5px);
  }
  44% {
    opacity: 0;
    transform: scale(0.4) translateY(20px);
  }
  45%, 49% {
    opacity: 0;
    transform: scale(0.4) translateY(-10px);
  }
  58%, 59.99% {
    opacity: 1;
    transform: scale(1) translateY(-10px);
  }
  60% {
    opacity: 1;
    transform: scale(1) translateY(-10px);
  }
  66% {
    opacity: 1;
    transform: scale(0.9) translateY(2.5px);
  }
  74% {
    opacity: 0;
    transform: scale(0.4) translateY(20px);
  }
  75%, 79% {
    opacity: 0;
    transform: scale(0.4) translateY(-10px);
  }
  88%, 100% {
    opacity: 1;
    transform: scale(1) translateY(-10px);
  }
}
@keyframes nudgeMouse {
  0% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(4px);
  }
  30% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(4px);
  }
  60% {
    transform: translateY(0);
  }
  80% {
    transform: translateY(4px);
  }
  90% {
    transform: translateY(0);
  }
}
@keyframes nudgeText {
  0% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(2px);
  }
  30% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(2px);
  }
  60% {
    transform: translateY(0);
  }
  80% {
    transform: translateY(2px);
  }
  90% {
    transform: translateY(0);
  }
}
@keyframes colorText {
  21% {
    color: #4e5559;
  }
  30% {
    color: #ffffff;
  }
  51% {
    color: #4e5559;
  }
  60% {
    color: #ffffff;
  }
  81% {
    color: #4e5559;
  }
  90% {
    color: #ffffff;
  }
}
