.home {
    .header {
        background-color: transparent;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 20;
    }

    .textGrad {
        background: linear-gradient(90deg, #e83638 0%, #583e66 100%);
        background-clip: text;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
}

/* banner */
.bannerSec {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;

    .bannerVdo {
        width: 100%;
        height: 100%;
        object-fit: cover;

        &.resView {
            display: none;
        }
    }

    .banText {
        position: absolute;
        top: 55%;
        left: 115px;
        transform: translateY(-50%);

        .banTextInn {
            .banHead {
                color: #000;
                font-size: 70px;
                text-transform: uppercase;
                line-height: 90px;
                position: relative;
                font-weight: 900;

                span {
                    display: block;
                    color: #e83638;
                    font-size: 150px;
                    line-height: 125px;
                }

                &::after {
                    content: "";
                    position: absolute;
                    bottom: -30px;
                    left: 0;
                    width: 600px;
                    height: 1px;
                    background-color: rgba(0, 0, 0, 0.25);
                }
            }
        }
    }
}

/* intro */
.introSec {
    background-repeat: no-repeat;
    background-size: cover;
    padding-right: calc((100% - 1330px) / 2);

    .introSecInn {
        display: flex;
        justify-content: space-between;
        align-items: center;

        .introSecLeft {
            width: 45%;

            .introImg {
                position: sticky;
                top: 80px;
                width: 100%;
                height: auto;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: contain;
                }
            }
        }

        .introSecRight {
            width: 55%;
            padding-left: 20px;

            .introSecTxt {
                .secH {
                    font-size: 45px !important;
                    line-height: 30px;
                    text-transform: uppercase;
                    color: #6d6e71;
                    margin-bottom: 30px;
                    font-weight: 900;

                    .grad {
                        display: block;
                        font-size: 75px;
                        line-height: 80px;
                        background: linear-gradient(90deg, #e83638 15%, #583e66 100%);
                        background-clip: text;
                        -webkit-background-clip: text;
                        -webkit-text-fill-color: transparent;
                        padding-left: 190px;
                    }

                    span {
                        &:last-child {
                            display: inline-block;
                            background: linear-gradient(90deg, #583e66 15%, #e83638 100%);
                            background-clip: text;
                            -webkit-background-clip: text;
                            -webkit-text-fill-color: transparent;
                            padding-left: 0;
                            margin-top: 0;
                            position: static;
                        }

                        &:nth-child(3) {
                            padding-left: 200px;
                            vertical-align: text-top;
                        }
                    }
                }
            }
        }
    }
}

/* md */
.mdSec {
    background-repeat: no-repeat;
    background-size: cover;

    .mdSecInn {
        .mdTxt {
            padding-right: 30px;

            .mdImgRes {
                display: none;
            }

            .mdTxtInn {
                position: relative;
                padding: 42px 0 25px;

                .mdTxtBx {
                    height: 190px;
                    padding-right: 12px;
                    overflow: auto;
                    text-align: justify;

                    &::-webkit-scrollbar {
                        width: 5px;
                    }
                }

                &::before {
                    content: "";
                    position: absolute;
                    left: 0;
                    top: 0;
                    background-image: url(../images/home/home-quote.png);
                    background-repeat: no-repeat;
                    background-size: contain;
                    width: 32px;
                    height: 32px;
                }

                &::after {
                    content: "";
                    position: absolute;
                    top: 20px;
                    right: 34px;
                    width: 88%;
                    height: 2px;
                    background-color: #fb0;
                    transition: width 1.2s ease;
                }

                &.line-active::after {
                    width: calc(100% - 50px);
                }
            }
        }

        .mdImg {
            width: 100%;
            height: 770px;
            position: relative;

            &::before {
                content: '';
                position: absolute;
                background-image: url(../images/home/md-bg.png);
                background-repeat: no-repeat;
                background-size: contain;
                width: 100%;
                height: 100%;
                right: 0;
                bottom: 0;
                z-index: -1;
            }

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: bottom;
            }
        }
    }

    &.directorSec {
        .mdSecInn {
            .mdTxt {
                padding-left: 30px;
            }

            .mdImg {
                &::before {
                    background-image: url(../images/home/director-bg.png);
                }
            }
        }
    }
}

/* key highlights */
.keyHighlightSec {
    background-repeat: no-repeat;
    background-size: cover;

    .keyHighlightBtm {
        padding-bottom: 60px;
        row-gap: 30px;
    }
}

.keyDiv {
    position: relative;
    padding: 30px 30px 0px;

    &::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 55px;
        border-top: 2px solid #e83638;
        border-left: 2px solid #e83638;
        border-radius: 15px 0 0 0;
        z-index: 1;
    }

    &::before {
        content: "";
        position: absolute;
        right: 0;
        top: -10px;
        width: 3px;
        height: 20px;
        background-color: #103c68;
        z-index: 2;
    }

    .keyDivInn {
        position: relative;
        z-index: 3;

        .keyDivHead {
            color: #000;
            font-size: 30px;
            font-weight: 700;
            line-height: 32px;
            margin-bottom: 15px;
        }

        .counterDiv {
            p {
                color: #103c68;
                font-size: 30px;
                font-weight: 500;
                line-height: 35px;

                span {
                    font-size: 45px;
                    font-weight: 700;
                }

                img {
                    width: 14px;
                    height: 30px;
                    object-fit: contain;
                    /* padding-left: 8px; */
                    padding-bottom: 8px;
                }
            }
        }
    }
}

/* capital sfb */
.capitalSfbSec {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right;

    .capitalSfbBtm {
        .capitalSfbAccCont {
            .sfbAcc {
                border: 1px solid rgba(0, 0, 0, 0.27);
                background: rgba(255, 255, 255, 0.15);
                backdrop-filter: blur(12.5px);

                .sfbAcc-head {
                    padding: 30px 20px;
                    position: relative;
                    cursor: pointer;

                    &::after {
                        content: "\f078";
                        font-family: fontawesome;
                        color: #fff;
                        font-size: 18px;
                        position: absolute;
                        top: 50%;
                        right: 25px;
                        transform: translateY(-50%);
                        width: 40px;
                        height: 40px;
                        border-radius: 50%;
                        background-color: #e83638;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        transition: all 0.5s;
                    }
                }

                .sfbAcc-content {
                    display: none;
                    padding: 0px 25px 25px;

                    .sfbAccDiv {
                        .sfbAccDivFlex {
                            .sfbAccDivInn {
                                display: flex;
                                justify-content: flex-start;

                                &:first-child {
                                    .sfbAccNum {
                                        border-color: #e83638;
                                    }
                                }

                                &:not(:first-child) {
                                    padding-top: 25px;
                                }

                                .sfbAccNum {
                                    width: 75px;
                                    height: 75px;
                                    border-radius: 50%;
                                    border: 2px solid #103c68;
                                    text-align: center;
                                    margin-top: 20px;

                                    p {
                                        color: #fb0;
                                        font-size: 57px !important;
                                        font-weight: 700;
                                        margin-bottom: 0;
                                        line-height: 1.6;
                                    }
                                }

                                .sfbAccTxt {
                                    width: calc(100% - 75px);
                                    padding-left: 25px;
                                    padding-bottom: 25px;
                                    border-bottom: 1px solid #fb0;
                                }
                            }
                        }
                    }

                    .tableWrap {
                        >table {
                            >tbody {
                                >tr {
                                    >td {
                                        &:first-child {
                                            width: 60%;
                                        }

                                        &:last-child {
                                            width: 40%;
                                        }
                                    }
                                }
                            }

                            table {
                                tbody {
                                    tr {
                                        td {
                                            &:first-child {
                                                width: 30%;
                                            }

                                            &:nth-child(2) {
                                                width: 40%;
                                            }

                                            &:last-child {
                                                width: 30%;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }

                    table {
                        table {
                            td {
                                &:last-child {
                                    width: 130px;
                                    padding-left: 6px;
                                    padding-right: 6px;
                                }
                            }
                        }
                    }
                }

                &.active {
                    .sfbAcc-head {
                        &::after {
                            transform: translateY(-50%) rotate(180deg);
                        }
                    }

                    .sfbAcc-content {
                        display: block;
                    }
                }

                &:not(:last-child) {
                    margin-bottom: 30px;
                }
            }
        }
    }
}

.outcomeDiv {
    .outcomeDivInn {
        border: 2px solid #e83638;
        padding: 20px 15px;

        .outcomeDivLt {
            width: 20%;
            padding-right: 20px;

            .outcomeImg {
                width: 70px;
                height: auto;
                margin: 0px auto;
            }

            p {
                line-height: 1.2;
            }
        }

        .outcomeDivRt {
            width: 80%;
            padding: 20px 25px;

            .outcomeDivFlexCol {
                position: relative;

                &:not(:last-child) {
                    &::after {
                        content: "";
                        position: absolute;
                        right: 0;
                        top: 50%;
                        transform: translateY(-50%);
                        width: 1px;
                        height: 90px;
                        background-color: #000;
                    }
                }

                .outcomeDivFlexDiv {
                    min-height: 100px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }
            }
        }
    }
}

@media (max-width: 1600px) {
    .bannerSec {
        .banText {
            .banTextInn {
                .banHead {
                    font-size: 60px;
                    line-height: 80px;

                    span {
                        font-size: 115px;
                        line-height: 95px;
                    }
                }
            }
        }
    }

    .introSecTxt {
        .fz_22 {
            font-size: 20px !important;
        }
    }

    .introSec {
        .introSecInn {
            .introSecRight {
                .introSecTxt {
                    .secH {
                        .grad {
                            font-size: 70px;
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 1480px) {
    .bannerSec {
        .bannerVdo {
            transform: scale(1.04);
            object-position: 0px 10px;
        }
    }
}

@media (max-width: 1440px) {
    .bannerSec {
        .banText {
            .banTextInn {
                .banHead {
                    font-size: 55px;
                    line-height: 85px;

                    span {
                        font-size: 100px;
                        line-height: 80px;
                    }

                    &::after {
                        width: 370px;
                    }
                }
            }
        }
    }

    .introSec {
        padding-right: 5%;

        .introSecInn {
            .introSecRight {
                .introSecTxt {
                    .secH {
                        font-size: 40px !important;

                        .grad {
                            font-size: 50px;
                            line-height: 65px;
                            padding-left: 160px;
                        }

                        span {
                            &:nth-child(3) {
                                padding-left: 165px;
                            }
                        }
                    }
                }
            }
        }

        .fz_22 {
            font-size: 18px !important;
        }
    }

    .mdSec {
        .mdSecInn {
            .mdImg {
                height: 600px;

                img {
                    object-fit: contain;
                }
            }

            .mdTxt {
                .mdTxtInn {
                    .fz_25 {
                        font-size: 22px !important;
                    }

                    .mdTxtBx {
                        height: 125px;
                    }

                }

                .fz_30 {
                    font-size: 26px !important;
                }
            }
        }
    }

    .keyHighlightSec {
        .fz_30 {
            font-size: 26px !important;
        }
    }

    .keyDiv {
        .keyDivInn {
            .keyDivHead {
                font-size: 25px;
            }

            .counterDiv {
                p {
                    span {
                        font-size: 35px;
                    }
                }
            }

            p.fz_26 {
                font-size: 20px !important;
            }
        }
    }

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .sfbAcc-head {
                        h3 {
                            font-size: 24px !important;
                        }
                    }

                    .fz_25 {
                        font-size: 20px !important;
                    }
                }
            }
        }
    }
}

@media (max-width: 1400px) {
    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .sfbAcc-head {
                        padding: 20px 15px;

                        &::after {
                            font-size: 16px;
                            right: 15px;
                        }

                        h3 {
                            font-size: 22px !important;
                        }
                    }

                    .sfbAcc-content {
                        .sfbAccDiv {
                            .sfbAccDivFlex {
                                .sfbAccDivInn {
                                    .sfbAccNum {
                                        width: 60px;
                                        height: 60px;
                                        margin-top: 10px;

                                        p {
                                            font-size: 40px !important;
                                        }
                                    }

                                    .sfbAccTxt {
                                        width: calc(100% - 60px);

                                        .fz_22 {
                                            font-size: 18px !important;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .outcomeDiv {
        .outcomeDivInn {
            .outcomeDivRt {
                .outcomeDivFlexCol {
                    .outcomeDivFlexDiv {
                        min-height: 80px;

                        .fz_20 {
                            font-size: 18px !important;
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 1366px) {

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .sfbAcc-content {
                        .tableWrap {
                            >table {
                                >tbody {
                                    >tr {
                                        >td {
                                            &:first-child {
                                                width: 65%;
                                            }

                                            &:last-child {
                                                width: 35%;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .keyDiv {
        padding: 20px 20px 0px;

        &::before {
            top: -8px;
            height: 16px;
            background-color: #103c68;
        }

        &::after {
            height: 42px;
        }

        .keyDivInn {
            .counterDiv {
                p {
                    font-size: 26px;

                    span {
                        font-size: 30px;
                    }
                }
            }
        }
    }

    .keyHighlightSec {
        .keyDiv {
            .keyDivInn {
                .counterDiv {
                    p {
                        span {
                            &.fz_35 {
                                font-size: 26px !important;
                            }
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 1280px) {

    .bannerSec {
        .banText {
            left: 80px;
        }

        .bannerVdo {
            object-position: right 10px;
        }
    }

    .introSec {
        .introSecInn {
            align-items: flex-start;
        }
    }

    .keyHighlightSec {
        .fz_30 {
            font-size: 22px !important;
        }
    }
}

@media (max-width: 1199px) {
    .bannerSec {
        .banText {
            left: 20px;

            .banTextInn {
                .banHead {
                    font-size: 46px;
                    line-height: 70px;

                    span {
                        font-size: 75px;
                        line-height: 60px;
                    }
                }
            }
        }
    }

    .introSec {
        padding-right: 20px;

        .introSecInn {
            .introSecLeft {
                width: 40%;
            }

            .introSecRight {
                width: 60%;

                .introSecTxt {
                    .secH {
                        font-size: 38px !important;

                        .grad {
                            font-size: 45px;
                            line-height: 56px;
                        }
                    }
                }
            }
        }
    }

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .sfbAcc-content {
                        padding-right: 20px !important;
                    }
                }
            }
        }
    }
}

@media (max-width: 1140px) {
    .mdSec {
        .mdSecInn {
            .mdTxt {
                .mb_40 {
                    margin-bottom: 25px !important;
                }

                .fz_30 {
                    font-size: 24px !important;
                }

                .fz_20 {
                    font-size: 18px !important;
                }

                .mdTxtInn {
                    .fz_25 {
                        font-size: 20px !important;
                    }
                }
            }

            .mdImg {
                &::before {
                    background-size: cover;
                }
            }
        }
    }
}

@media (max-width: 1024px) {

    .introSec {
        padding-right: 0;

        .introSecInn {
            .introSecLeft {
                display: none;
            }

            .introSecRight {
                width: 100%;
                padding: 0px 15px;

                .introSecTxt {
                    .secH {
                        text-align: center;
                        line-height: 40px;

                        .grad {
                            display: inline;
                            padding-left: 0;
                            font-size: 38px;
                            line-height: 40px;

                        }

                        span {
                            &:nth-child(3) {
                                padding-left: 0;
                                vertical-align: unset;
                            }
                        }
                    }

                    .textDiv {
                        text-align: center;
                    }
                }
            }
        }
    }

    .keyDiv {
        .keyDivInn {
            .counterDiv {
                p {
                    font-size: 22px;

                    span {
                        font-size: 26px;

                        &.fz_30 {
                            font-size: 26px !important;
                        }
                    }
                }
            }
        }
    }

    .keyHighlightSec {
        .fz_30 {
            font-size: 20px !important;
        }

        .keyDiv {
            .keyDivInn {
                .keyDivHead {
                    color: #000;
                    font-size: 25px;
                    margin-bottom: 10px;
                }

                .counterDiv {
                    p {
                        span {
                            &.fz_35 {
                                font-size: 22px !important;
                            }
                        }
                    }
                }
            }
        }
    }

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .sfbAcc-content {
                        .tableWrap {
                            >table {
                                >tbody {
                                    >tr {
                                        >td {
                                            &:first-child {
                                                width: auto;
                                                min-width: 400px;
                                                padding-left: 0 !important;
                                            }

                                            &:last-child {
                                                width: auto;
                                                min-width: 200px;
                                            }
                                        }
                                    }
                                }
                            }
                        }

                        .sfbAccDiv {
                            .sfbAccDivFlex {
                                .sfbAccDivInn {
                                    .sfbAccTxt {
                                        .fz_22 {
                                            font-size: 16px !important;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 991px) {
    body {
        overflow-x: hidden;
    }

    .bannerSec {
        /* .bannerVdo {
            object-position: 0px;
            transform: scale(1);

            &.deskView {
                display: none;
            }

            &.resView {
                display: block;
            }
        } */

        .banText {
            .banTextInn {
                .banHead {
                    font-size: 35px;
                    line-height: 60px;

                    span {
                        font-size: 60px;
                        line-height: 55px;
                    }
                }
            }
        }
    }

    .mdSec {
        padding-bottom: 80px !important;

        .mdSecInn {
            .mdTxt {
                padding-right: 0;
                text-align: center;

                .mdImgRes {
                    display: block;
                    width: 300px;
                    height: auto;
                    margin: 0px auto;
                }

                .mdTxtInn {
                    text-align: center;

                    .mdTxtBx {
                        height: 100%;
                        padding: 0;
                        text-align: center;
                    }

                    &::after {
                        right: 0;
                        width: calc(100% - 45px);
                    }
                }
            }

            .mdSecImgDiv {
                display: none;
            }
        }

        &.directorSec {
            .mdSecInn {
                .mdTxt {
                    padding-left: 0;
                }
            }
        }
    }

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    &:not(:last-child) {
                        margin-bottom: 20px;
                    }

                    .sfbAcc-head {
                        padding: 16px 15px;

                        h3 {
                            font-size: 18px !important;
                        }

                        &::after {
                            width: 32px;
                            height: 32px;
                        }
                    }

                    .sfbAcc-content {
                        padding-top: 20px;
                    }
                }
            }
        }
    }

    .outcomeDiv {
        padding-right: 0 !important;

        .outcomeDivInn {
            .outcomeDivRt {
                .outcomeDivFlexCol {
                    .outcomeDivFlexDiv {
                        .fz_20 {
                            font-size: 16px !important;
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 840px) {
    .bannerSec {
        .bannerVdo {
            object-position: right;
            transform: scale(1);

            &.deskView {
                display: none;
            }

            &.resView {
                display: block;
            }
        }

        .banText {
            position: absolute;
            bottom: 0;
            top: auto;
        }
    }

    .introSec {
        .introSecInn {
            .introSecRight {
                .introSecTxt {
                    .secH {
                        font-size: 32px !important;
                        margin-bottom: 20px;

                        .grad {
                            font-size: 32px;
                        }
                    }
                }
            }
        }
    }

    .keyDiv {
        .keyDivInn {
            .counterDiv {
                p {
                    font-size: 20px;

                    span {
                        font-size: 24px;

                        &.fz_30 {
                            font-size: 24px !important;
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 768px) {

    .bannerSec {
        .bannerVdo {
            object-position: right -280px;
        }

        .banText {
            left: 50%;
            position: absolute;
            bottom: 60px;
            top: auto;
            transform: translateX(-50%);
            text-align: center;
            width: 100%;
            max-width: 450px;
            padding: 0px 15px;

            .banTextInn {
                .banHead {
                    font-size: 30px;
                    line-height: 50px;

                    span {
                        font-size: 42px;
                        line-height: 48px;
                        display: inline-block;
                    }

                    &::after {
                        width: 70%;
                        left: 50%;
                        transform: translateX(-50%);
                        bottom: -10px;
                    }
                }
            }
        }
    }

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .fz_25 {
                        font-size: 18px !important;
                    }
                }
            }
        }
    }
}

@media (max-width: 767px) {
    .outcomeDiv {
        .outcomeDivInn {
            flex-wrap: wrap;
            row-gap: 20px;

            .outcomeDivLt {
                width: 100%;
                text-align: center;
            }

            .outcomeDivRt {
                width: 100%;
            }
        }
    }
}

@media (max-width: 640px) {
    .bannerSec {
        height: 70vh;
        .bannerVdo {
            object-position: right -200px;
        }
    }
}

@media (max-width: 575px) {

    .bannerSec {
        .bannerVdo {
            object-position: right;
        }
    }

    .capitalSfbSec {
        .capitalSfbBtm {
            .capitalSfbAccCont {
                .sfbAcc {
                    .sfbAcc-content {
                        .sfbAccDiv {
                            .sfbAccDivFlex {
                                .sfbAccDivInn {
                                    flex-direction: column;
                                    justify-content: center;
                                    align-items: center;
                                    gap: 15px;

                                    .sfbAccTxt {
                                        width: 100%;
                                        padding-left: 0;

                                        .fz_22 {
                                            text-align: center;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .outcomeDiv {
        .outcomeDivInn {
            .outcomeDivRt {
                padding: 15px 25px;

                .outcomeDivFlexCol {
                    &:not(:last-child) {
                        &::after {
                            content: "";
                            position: absolute;
                            right: 0;
                            top: auto;
                            bottom: 0;
                            transform: none;
                            width: 100%;
                            height: 1px;
                            background-color: #000;
                        }
                    }

                    .outcomeDivFlexDiv {
                        min-height: 100%;
                        padding: 10px 0px;

                        p {
                            br {
                                display: none;
                            }
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 480px) {
    .mdSec {
        &.directorSec {
            .mdSecInn {
                .mdTxt {
                    .mdImgRes {
                        padding-left: 40px;

                        &::before {
                            left: 40px;
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 420px) {
    .bannerSec {
        .banText {
            .banTextInn {
                .banHead {
                    span {
                        font-size: 36px;
                        line-height: 45px;
                    }
                }
            }
        }
    }
}