/* Reset Some Basic Styles */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Body and Basic Layout */
html {
    font-size: 40px;
}

body {
    font-family: "Lato", serif;
    margin: 0;
    padding: 0;
    background-color: #0A4A54;
}

h1 {
    font-size: 2rem;
}

h2 {
    font-size: 1.6rem;
    color: #212121;
    font-weight: 900;
    line-height: 80px;
}

h3 {
    font-size: 1rem;
    color: #6C6D6D;
}

h4 {
    font-size: 0.8rem;
    color: #212121;
    font-weight: 700;
    line-height: 48px;
}

h5 {
    font-size: 0.7rem;
    color: #6C6D6D;
    font-weight: 400;
    line-height: 40px;
}

h6 {
    font-size: 0.6rem;
}

p {
    font-size: 20px;
}

.card-title {
    color: #0A4A54;
    font-weight: 900;
    line-height: 56px;
}



/* Header */
.navbar {
    min-height: 160px;
    border-bottom: 2px solid #FFF;
}

.navbar-nav {
    gap: 88px;
}

.nav-link {
    font-size: 0.6rem;
    font-weight: 400;
    line-height: 32px;
    padding: 0;
}

.nav-link.active {
    font-weight: 700;
}

#navbarSupportedContent {
    margin-left: 255px;
}

.header-bg {
    background: url("../images/header-bg.png");
    background-position: center;
    background-size: cover;
}

/* Footer */

footer {
    padding: 80px;
    border-top: 2px solid #FFF;
    background: #0A4A54;
}

hr {
    border-color: white;
    border-width: 1px;
}


/* Homepage */

.bg-home {
    background: url('../images/bg-home.jpeg');
    background-size: cover;
    background-position: center;
}

.hero-one {
    padding: 60px 0;
}

.main-heading {
    margin-top: 60px;
    font-weight: 900;
    line-height: 104px;
}

.sub-heading {
    margin-top: 40px;
    font-weight: 400;
    line-height: 40px;
    margin-bottom: 64px;
}

.home-btns {
    margin-bottom: 40px;
    gap: 40px;
}

.home-btn {
    padding: 20px 40px;
    width: 100%;
    height: 100%;
    max-width: 366px;
    max-height: 80px;
    text-align: center;
    border-radius: 8px;
    background: #2DC96C;
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.16);
    text-decoration: none;
    color: white;
    font-size: 0.6rem;
}


.text-green {
    color: #2DC96C;
}



/* About Us */
.abt-section-1 {
    background: url("../images/bg-about-1.jpeg");
    background-repeat: no-repeat;
    background-size: cover;
    padding: 80px 0;
}

.values-section {
    background: url("../images/values-bg.jpeg");
    background-repeat: no-repeat;
    background-size: cover;
    padding: 120px 0;
    position: relative;
}

.vision-section {
    background: url("../images/bg-vision.jpeg");
    background-repeat: no-repeat;
    background-size: cover;
}

.values-title {
    margin-bottom: 80px;
}

.values-stroke {
    position: absolute;
    top: 314px;
    left: 21px;
}

.value-cards {
    gap: 80px;
}

.value-card {
    width: 100%;
    height: 100%;
    max-width: 360px;
    max-height: 312px;
    margin-top: 72px;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    background: white;
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.24);
    border-radius: 40px;
    padding: 100px 20px 40px 20px;
    position: relative;
}

.icon-container img {
    width: 100%;
}

.icon-container {
    width: 144px;
    height: 144px;
    border-radius: 50%;
    background: #2DC96C;
    padding: 24px;
    box-shadow: 0px 16px 0 #0A4A54;
    position: absolute;
    top: -72px;
}

.vision-section {
    padding: 120px 0;
}

.img-text .img-container-vis {
    max-width: 656px;
}

.section-margin-vision {
    padding: 120px 0;
}

.m-vision {
    margin-bottom: 120px;
}

.mb-abt-80 {
    margin-bottom: 80px;
}


/* Our Programs */

.bg-light {
    background: url("../images/bg-light.jpeg");
    background-size: cover;
    background-position: center;
}

.op-section {
    padding: 80px 0;
}

.text-our-programs {
    margin-bottom: 82px;
}

.mb-75 {
    margin-bottom: 75px;
}

.stroke-container {
    position: absolute;
    left: 140px;
}

.card-op {
    width: 400px;
    height: 392px;
    position: absolute;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    border-radius: 40px;
    padding: 112px 40px 40px;
    background: #FFF;
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.24);
}

.down-ops {
    top: 284px;
}

.d-op-1 {
    left: 0;
}

.d-op-2 {
    right: 0;
}

.number-container-op {
    position: absolute;
    top: -75px;
    width: 144px;
    height: 144px;
    padding: 40px;
    background: #0A4A54;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 16px 0px #2DC96C;
}



/* Our Apps */
.our-apps-section {
    background: url("../images/our-apps-bg.jpeg");
    background-size: cover;
    background-position: center;
    padding: 93px 0;

}

.kmoney-img-container {
    max-width: 508px;
}

.kondemand-img-container {
    max-width: 500px;
}

.kazi-money-sec {
    margin-bottom: 177px;
}

.download-btns-container a {
    text-decoration: none;
    color: none;
    max-width: 245px;
}

.download-btns-container a img {
    width: 100%;
}

.for-sp {
    margin-bottom: 45px;
}

.kmoney-text {
    gap: 40px;
}


/* Contact Us */
.contact-us-section {
    background: url("../images/contact-bg.jpeg");
    background-size: cover;
    background-position: center;
    padding: 120px 0;
}

.text-content-contact {
    margin-bottom: 120px;
}

/* custom form (Please Change below css as per this look) */

.contact-info {
    padding: 120px 80px;
    display: flex;
    flex-flow: column;
    gap: 40px;
}

.contact-info h3 {
    color: #FFFF;
    font-weight: 900;
    margin-bottom: 0;
}

.contact-info-content h5 {
    color: #fff;
    font-weight: 700;
}

.contact-info-content p {
    color: #FFF;
    font-family: Lato;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 0;
}

.contact-info-container {
    display: flex;
    gap: 20px;
    align-items: center;
}

.bg-contact {
    background: #0A4A54;
    margin: 135px 0;
}


/* *********** */
.relative-container-form {
    position: relative;
}

.form-container {
    position: absolute;
    box-sizing: border-box;
    transform: translate(-15%, -15%);
    width: 800px;
    height: 900px;
    padding: 80px;
    flex-shrink: 0;
    border-radius: 16px;
    background: #FFF;
    box-shadow: 0px 24px 40px 0px rgba(0, 0, 0, 0.16);
}

.para-1-abt,
.para-2-abt {
    line-height: 56px;
}

form {
    display: flex;
    flex-direction: column;
}

label {
    color: #212121;
    font-family: Lato;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 32px;
    margin-bottom: 20px;
}

input,
textarea {
    height: 72px;
    padding: 20px 24px;
    border: 1px solid rgba(33, 33, 33, 0.24);
    border-radius: 8px;
    margin-bottom: 40px;
    font-size: 16px;
    width: 100%;
    box-sizing: border-box;
}

textarea {
    height: 200px;
    resize: none;
    margin-bottom: 80px;
}

button {
    border-radius: 8px;
    background: #0A4A54;
    color: #fff;
    padding: 20px;
    border: none;
    color: #F5F8F8;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

button:hover {
    background-color: #003d36;
}




/* Responsive CSS */

@media screen and (min-width:1920px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    .container {
        max-width: 1680px;
        padding: 0;
    }

    h1 {
        line-height: unset;
    }

    /* Header */

    /* Footer */

    /* Homepage */
    .home-btn {
        padding: 20px;
        height: 100%;
        width: 100%;
        max-width: 366px;
        max-height: 80px;
        text-align: center;
        border-radius: 8px;
        background: #2DC96C;
        box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.16);
        text-decoration: none;
        color: white;
        font-size: 0.6rem;
    }


    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */

}

@media screen and (max-width:1920px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        font-size: 36px;
    }

    h1 {
        line-height: unset;
    }

    /* Header */

    /* Footer */

    /* Homepage */
    .home-btn {
        padding: 20px;
        flex-grow: 1;
        text-align: center;
        border-radius: 8px;
        background: #2DC96C;
        box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.16);
        text-decoration: none;
        color: white;
        font-size: 0.6rem;
    }


    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */

}

@media screen and (max-width: 1919px) {


    h1 {
        font-size: 1.8rem;
    }

    h2 {
        font-size: 1.4rem;
        color: #212121;
        font-weight: 900;
        line-height: 80px;
    }

    h3 {
        font-size: 0.8rem;
        color: #6C6D6D;
    }

    h4 {
        font-size: 0.6rem;
        color: #212121;
        font-weight: 700;
        line-height: 48px;
    }

    h5 {
        color: #6C6D6D;
        font-weight: 400;
        line-height: 30px;
    }

    h6 {
        font-size: 0.4rem;
    }

    p {
        font-size: 20px;
    }

    .card-title {
        line-height: 56px;
    }


    /* Navbar */
    #navbarSupportedContent {
        margin: unset;
    }

    .navbar-nav {
        margin: auto;
        gap: 20px;
    }

    /* Our Programs */
    .stroke-container {
        top: 230px;
    }

    /* About Us */
    .para-1-abt,
    .para-2-abt {
        line-height: 40px;
    }

    .values-stroke {
        width: 92%;
    }

    /* Contact Us */
    .form-container {
        width: 600px;
        height: 820px;
        padding: 40px;
        transform: translate(-15%, -7.5%);
    }

}

@media screen and (min-width:1440px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    .main-heading {
        line-height: 104px;
    }


}

@media screen and (min-width:1400px) {
    .cards-container-ops {
        height: 986px;
        margin-bottom: 116px;
    }

    .main-heading {
        line-height: normal;
    }

    .phone-img-1 {
        position: absolute;
        left: 0;
        text-align: center;
        top: 250px;
    }

    .phone-img-2 {
        position: absolute;
        text-align: center;
        bottom: -190px;
    }

    .cards-op-row {
        margin-top: 230px;
    }

}

@media screen and (max-width:1440px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        font-size: 28px;
    }

    h1 {
        font-size: 1.8rem;
    }

    h2 {
        line-height: 50px;
    }

    h3 {
        font-size: 0.8rem;
    }

    h4 {
        font-size: 0.7rem;
        color: #212121;
        font-weight: 700;
        line-height: 24px;
    }

    h5 {
        font-size: 0.6rem;
        color: #6C6D6D;
        font-weight: 400;
        line-height: 24px;
    }

    h6 {
        font-size: 0.5rem;
    }

    p {
        font-size: 18px;
    }

    .card-title {
        color: #0A4A54;
        font-weight: 900;
        line-height: 28px;
        margin-bottom: 10px;
    }

    .icon-container {
        width: 110px;
        height: 110px;
        top: -55px;
    }

    .main-heading {
        line-height: normal;
    }

    /* Header */
    .navbar {
        padding: 10px 0;
        min-height: unset;
    }

    /* Footer */

    /* Homepage */

    /* About Us */
    .para-1-abt,
    .para-2-abt {
        line-height: 38px;
    }

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */

}


@media screen and (max-width:1399px) {

    .stroke-container {
        display: none;
    }

    .cards-op-row {
        margin-top: 120px;
    }


    .card-op {
        position: unset;
        width: unset;
        height: unset;
    }

    .phone-img-1,
    .phone-img-2 {
        display: none;
    }

    .values-stroke {
        display: none;
    }

    .contact-form-section {
        padding: unset;
    }

    .contact-info {
        padding: 40px;
    }

    .contact-form-section {
        min-height: 800px;
    }

    .form-container {
        width: 550px;
        height: unset;
        padding: 40px;
        transform: translate(-10%, -10%);
    }

    input,
    textarea {
        padding: 16px 10px;
        margin-bottom: 20px;
        height: unset;
    }

    textarea {
        height: 100px;
    }
}

@media screen and (max-width:1200px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    /* Header */

    /* Footer */

    /* Homepage */

    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */
    .contact-form-section {
        min-height: unset;

    }

    .relative-container-form {
        padding: 20px 0;
    }

    .form-container {
        position: static;
        width: 100%;
        height: unset;
        padding: 40px;
        transform: none;
    }

}

@media screen and (max-width:1024px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    /* Header */

    /* Footer */

    /* Homepage */

    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */

}

@media screen and (max-width:992px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        font-size: 25px;
    }

    /* Header */
    #navbarSupportedContent {
        margin: auto;
        justify-content: center;
        background: #0d606c;
        padding: 15px;
        border-radius: 8px;
    }

    /* Footer */

    /* Homepage */
    .home-btns {
        flex-wrap: wrap;
    }

    .home-btn {
        flex-grow: 1;
    }

    /* About Us */

    /* Our Programs */

    /* Our Apps */
    .download-btns-container a {
        max-width: 200px;
    }

    /* Contact Us */

}

@media screen and (max-width:991px) {
    .number-container-op {
        width: 100px;
        height: 100px;
        padding: 20px;
    }

    .card-op {
        padding: 56px 20px 20px;
    }

    .contact-us-section {
        padding: 80px 0;
    }

    .bg-contact {
        margin: 70px 0;
    }

    .text-content-contact {
        margin-bottom: 10px;
    }

    .form-container button {
        font-size: 22px;
    }

}

@media screen and (max-width:768px) {
    .kmoney-text {
        gap: 15px;
    }
}

@media screen and (max-width:767px) {
    .footer {
        padding: 40px 0;
    }

    .home-btns {
        flex-wrap: nowrap;
    }

    .cards-op-row {
        gap: 100px;
    }

    .para-1-abt,
    .para-2-abt {
        line-height: 25px;
    }

    .value-cards {
        gap: 20px;
    }

    .values-title {
        margin-bottom: 30px;
    }

    .values-section {
        padding: 80px 0;
    }

    .g-sm-30 {
        gap: 30px;
    }

    .contact-us-section {
        padding: 80px 0;
    }

    .bg-contact {
        margin: 70px 0;
    }

    .text-content-contact {
        margin-bottom: 10px;
    }

    .form-container button {
        font-size: 22px;
    }

}

@media screen and (max-width:575px) {


    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    /* Header */

    /* Footer */

    /* Homepage */
    .sub-heading {
        line-height: 30px;
    }

    .main-heading {
        margin: unset;
    }

    .home-btns {
        flex-wrap: wrap;
        justify-content: center;
    }

    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */

}

@media screen and (min-width:426px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    /* Header */

    /* Footer */

    /* Homepage */

    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */

}

@media screen and (max-width:426px) {

    *,
    *::before,
    *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        font-size: 22px;
        word-break: break-word;
    }

    h1 {
        line-height: auto;
    }

    /* Header */

    /* Footer */

    /* Homepage */

    /* About Us */

    /* Our Programs */

    /* Our Apps */

    /* Contact Us */
    .contact-info-container {
        align-items: flex-start;
    }

    .contact-info {
        padding: 0px;
        gap: 25px;
        margin-bottom: 20px;
    }

    .form-container {
        padding: 20px;
    }

    .contact-strip {
        padding: 20px 10px;
    }

    .contact-info h3 {
        font-size: 1.5rem;
        line-height: unset;
    }

    .contact-info-content h5 {
        font-size: 1rem;
        line-height: unset;
    }

    input,
    textarea {
        padding: 10px;
    }

    label {
        font-size: 1rem;
        line-height: unset;
        margin-bottom: 5px;
    }

    button {
        font-size: 1rem;
        line-height: unset;
        padding: 16px;
    }

    .text-content-contact {
        margin-bottom: 15px;
    }

}