* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

@font-face {
    font-family: Metropolis-Regular;
    src: url(fonts/Metropolis-Regular.otf);
    font-display: swap;
}

@font-face {
    font-family: Metropolis-Medium;
    src: url(fonts/Metropolis-Medium.otf);
    font-display: swap;
}

@font-face {
    font-family: Metropolis-Bold;
    src: url(fonts/Metropolis-Bold.otf);
    font-display: swap;
}

@font-face {
    font-family: Metropolis-ExtraBold;
    src: url(fonts/Metropolis-ExtraBold.otf);
    font-display: swap;
}

body {
    font-family: Metropolis-Regular;
    padding: 0;
    margin: 0;
    font-size: 15px;
    position: relative;
    line-height: 19px;
    overflow-x: hidden;
}

.heading {
    font-family: Metropolis-Medium;
    text-align: center;
    font-size: 40px;
    color: #FFCB05;
    text-transform: uppercase;
    margin: 0 0 40px 0;
    line-height: normal;
}

.heading span {
    font-family: Metropolis-ExtraBold;
}

.mainBox {
    background-color: #B22830;
    color: #FFF;
}

/* Animation start */

.placement_rightbox {
    overflow: hidden;
}

.life_listing {
    overflow: hidden;
    border-radius: 100%;
}

.life_listing:hover img {
    animation: kenburns-top 5s ease-out both;
}

.placement_rightbox:hover img {
    animation: kenburns-top 5s ease-out both;
}

@keyframes kenburns-top {
    0% {
        transform: scale(1) translateY(0);
        transform-origin: 50% 16%;
    }

    100% {
        transform: scale(1.25) translateY(-15px);
        transform-origin: top;
    }
}


.footer_imgbox:hover img {
    animation: heartbeat 1.5s ease-in-out infinite both;
}

@keyframes heartbeat {
    from {
        transform: scale(1);
        transform-origin: center center;
        animation-timing-function: ease-out;
    }

    10% {
        transform: scale(0.91);
        animation-timing-function: ease-in;
    }

    17% {
        transform: scale(0.98);
        animation-timing-function: ease-out;
    }

    33% {
        transform: scale(0.87);
        animation-timing-function: ease-in;
    }

    45% {
        transform: scale(1);
        animation-timing-function: ease-out;
    }
}


.rec_listing:hover img,
.professional_logo_listing:hover img {
    animation: flip-in-ver-left 0.7s linear both;
}

@keyframes flip-in-ver-left {
    0% {
        transform: rotateY(80deg);
        opacity: 0;
    }

    100% {
        transform: rotateY(0);
        opacity: 1;
    }
}


/* Animation ends */

/* Header section start */

header {
    background-image: url("../images/header_background.webp");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    background-color: #B22830;
    padding: 0 0 40px 0;
}


/* header::after {
    content: "";
    position: absolute;
    left: 0;
    top: -60px;
    background-image: url("../images/header_background.png");
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
} */

.header_first_logo {
    /* padding: 60px 0; */
    position: relative;
    z-index: 1;
}

.header_first_logo img {
    max-width: 600px;
}

.header_second_logo {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.header_second_logo img {
    max-width: 200px;
}


/* Header section ends */


/* ABOUT THE INSTITUTE START */

.about_section {
    padding: 50px 0 0 0;
    background-color: #B22830;
}

.about_box p {
    font-size: 20px;
    font-family: Metropolis-Medium;
    color: #ffffff;
    line-height: 25px;
    text-align: justify;
}


/* ABOUT THE INSTITUTE ENDS */


/* BANNER SECTION START */

.banner_section {
    padding: 50px 0;
}

.banner_text {
    font-family: Metropolis-ExtraBold;
    color: #FFF;
    font-size: 58px;
    line-height: 60px;
}

.banner_text span {
    font-family: Metropolis-Medium;
}

.banner_contentMainBox img {
    max-width: 420px;
    margin: 20px 0 0 0;
}

.form_mainbox {
    background-color: #FFF;
    border-radius: 15px;
    margin: 0 0 0 auto;
}

.form_heading {
    background-color: #DAA356;
    border-radius: 15px 15px 0 0;
    padding: 15px 20px;
    font-size: 30px;
    line-height: 30px;
    text-align: center;
    font-family: Metropolis-Bold;
}

.form {
    padding: 20px;
    position: relative;
    z-index: 1;
}

.from-control {
    width: 100%;
    padding: 8px;
    margin: 0 0 8px 0;
    border: 0;
    outline: 0;
    font-size: 20px;
}

select.from-control {
    background-color: #FFF;
}

.btn_submit {
    background-color: #B22830;
    margin: 8px auto;
    font-size: 22px;
    color: #FFF;
    font-family: Metropolis-Bold;
    padding: 8px 20px;
    border: 0;
    border-radius: 17px;
    outline: 0;
}

.note {
    margin: 10px 0 0 0;
    color: #3C3C3C;
    font-size: 12px;
    line-height: 15px;
    text-align: center;
}

.program_box {
    display: flex;
    background-color: #FFF;
    border-radius: 15px;
    color: #3C3C3C;
    padding: 50px 0;
    margin: 70px 0 0 0;
}

.program_list {
    padding: 0 50px;
}

.program_list:nth-child(2) {
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
}

.program_name {
    color: #B22830;
    font-size: 35px;
    line-height: normal;
    font-family: Metropolis-Bold;
}

.program_content {
    font-family: Metropolis-Medium;
    font-size: 20px;
    color: #3C3C3C;
    line-height: 25px;
}

.program_list span {
    display: block;
}

.program_box {
    position: relative;
}

.program_box::before {
    position: absolute;
    content: "";
    background-image: url("../images/girl.webp");
    background-position: top center;
    background-repeat: no-repeat;
    background-size: contain;
    height: 732px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    left: 0;
    right: 0;
    top: -332%;
}

.loader {
    display: none;
    border: 4px solid rgb(255 255 255 / 0.3);
    border-top: 4px solid #3d338a;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    animation: spin 1s linear infinite;
    margin-left: 10px;
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.loading {
    background-color: #ccc;
    pointer-events: none;
}

/* BANNER SECTION END */


/* OUR INSTITUTE HIGHLIGHT SECTION START */

.insti_section {
    padding: 100px 0 0 0;
    background-color: #B22830;
}

.custom_list ul li {
    color: #ffffff;
    font-family: Metropolis-Medium;
    font-size: 20px;
    padding: 0 0 10px 0;
    line-height: 30px;
}


/* OUR INSTITUTE HIGHLIGHT SECTION ENDS */


/* Placement section start */

.placement_section {
    padding: 100px 0 0 0;
    background-color: #B22830;
}

.placement_section .placement_number {
    font-size: 100px;
    font-family: Metropolis-Bold;
    line-height: normal;
}

.placement_section .placement_content {
    font-family: Metropolis-Medium;
    font-size: 40px;
    line-height: normal;
}

.placement_left_firstbox {
    display: flex;
    flex-direction: column;
    height: 50%;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
    padding: 50px;
    gap: 40px;
    color: #000;
}

.placement_left_secondbox {
    display: flex;
    flex-direction: column;
    height: 50%;
    justify-content: center;
    align-items: center;
    background-color: #DAA356;
    padding: 50px;
    gap: 40px;
    color: #FFF;
}

.placement_leftbox {
    height: 100%;
}

.placement_btn {
    padding: 20px 30px;
    background-color: #DAA356;
    color: #ffffff;
    font-family: Metropolis-ExtraBold;
    font-size: 40px;
    border-radius: 100px;
}

.placement_left_secondbox .placement_btn {
    background-color: #B22830;
}

.placement_content span {
    font-family: Metropolis-Bold;
}


/* Placement section ends */


/* Recruiters section start */

.rec_section {
    padding: 100px 0 0 0;
    background-color: #B22830;
}

.rec_mainbox {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.rec_listing {
    margin: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #c7b8b8;
    background-color: #FFF;
    padding: 6px;
    transition-duration: 0.5s;
    border-radius: 8px;
    height: 82px;
    width: 150px;
}

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


/* Recruiters section ends */


/* Life @ section start */

.life_section {
    padding: 100px 0 0 0;
    background-color: #B22830;
}


/* Life @ section ends */


/* Professional bodies section start */

.bodies_section {
    padding: 100px 0;
    background-color: #B22830;
}

.professional_logo_listing {
    width: 200px;
    height: 86px;
    padding: 10px;
    background-color: #ffffff;
    border-radius: 8px;
}

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

.margin_20 {
    margin: 20px 0 0 0;
}


/* Professional bodies section ends */


/* footer start */

footer {
    padding: 100px 0;
    position: relative;
}

footer::after {
    content: "";
    position: absolute;
    left: 0;
    top: -60px;
    background-image: url("../images/footer_background.webp");
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
}

.footer_mainbox {
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
}

.footer_contentbox {
    font-family: Metropolis-Bold;
    color: #3C3C3C;
    font-size: 40px;
    text-align: end;
}

.footer_firstcontentbox {
    margin: 0 0 20px 0;
}

.footer_imgbox img {
    max-width: 130px;
}


/* footer ends */
/* thank you poage start*/
.thankyou {
    padding: 150px 0;
    text-align: center;
}
.back_btn {
    background-color: #DAA356;
    margin: 8px auto;
    font-size: 22px;
    color: #FFF;
    font-family: Metropolis-Bold;
    padding: 8px 20px;
    border: 0;
    border-radius: 17px;
    outline: 0;
    display:inline;
    text-decoration:none;
}
/* thamk you page end*/

@media screen and (max-width: 1400px)  {
    .program_box::before{
        top: -280%;
    }
}
@media screen and (max-width:767px) {
    .header_first_logo {
        padding: 0 0;
    }

    .header_first_logo img {
        max-width: 88%;
    }

    .header_second_logo img {
        max-width: 70px;
    }

    .program_box::before {
        display: none
    }

    .banner_text {
        font-size: 30px;
        line-height: 36px;
        text-align: center;
    }

    .banner_contentMainBox img {
        max-width: 100%;
        margin: 20px 0;
    }

    .program_box {
        display: block;
        padding: 20px;
    }

    .program_list {
        padding: 20px 0;
        text-align: center;
    }

    .program_list:nth-child(2) {
        border-left: 0;
        border-right: 0;
        border-top: 1px solid #eee;
        border-bottom: 1px solid #eee;
    }

    
    .placement_section,
    .rec_section,
    .bodies_section,
    .life_section {
        padding: 30px 0 0 0;
    }

    .insti_section {
        padding: 20px 0 0 0;
    }

    .placement_section .placement_number {
        font-size: 50px;
        line-height: 0;
    }

    .placement_section .placement_content {
        font-size: 35px;
        line-height: 0;
    }

    .placement_btn {
        font-size: 35px;
    }

    .life_listing {
        padding: 10px;
    }

    .professional_logo_listing {
        margin: 0 0 10px 0;
        width: auto;
    }

    .bodies_section {
        padding: 30px 0 80px;
    }

    .margin_20 {
        margin: 0;
    }

    .rec_listing {
        width: 48%;
    }

    footer {
        padding: 0;
    }

    .footer_mainbox {
        display: block;
        text-align: center;
    }

    .footer_contentbox {
        text-align: center;
        line-height: normal;
        margin: 0 0 10px 0;
    }

    .about_section {
        padding: 0;
    }

    .heading {
        margin: 0 0 20px 0;
    }

    .banner_section {
        padding: 30px 0;
    }

    .program_box {
        margin: 30px 0 0 0;
    }
    header{
        padding: 0 0 20px 0;
    }
}