* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'GothamBook';
    color: var(--black);
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
ul,
li {
    margin: 0;
    padding: 0;
}

h1 {
    font-size: 60px;
    font-family: 'GothamBook';
    line-height: 1;
}

h2 {
    font-size: 50px;
    margin-bottom: 30px;
}

h3 {
    font-size: 35px;
}

h4 {
    font-size: 30px;
}

p {
    font-size: 23px;
    line-height: 1.2;
}

a,
a:hover {
    text-decoration: none;
}

:root {
    --red: #df2039;
    --black: #000;
    --white: #fff;
    --gray: #e2e2e2;
    --darkgray: #dbd9d9;
    --peach: #ffe9ed;
}

@font-face {
    font-family: 'Gotham-Black';
    src: url('../fonts/Gotham-Black.ttf');
}

@font-face {
    font-family: 'Gotham-Ultra';
    src: url('../fonts/Gotham-Ultra.ttf');
}

@font-face {
    font-family: 'GothamBold';
    src: url('../fonts/GothamBold.ttf');
}

@font-face {
    font-family: 'GothamBook';
    src: url('../fonts/GothamBook.ttf');
}

@font-face {
    font-family: 'GothamMedium';
    src: url('../fonts/GothamMedium.ttf');
}

h1,
h2 b,
.banner-box h4,
.banner-adm h3,
.banner-adm a,
.appro p b,
.edge-txt h3,
.legal-txt h5,
.global-img h3,
.global-img p,
.edge-txt p b {
    font-family: 'GothamBold';
}

.banner-txt h5,
p,
.placement-txt h4 span {
    font-family: 'GothamMedium';
}

section {
    padding: 80px 0;
}

/* header css start */
header {
    background: url(../images/banner2.webp) center no-repeat;
    /* background: url(../images/banner.webp) center no-repeat; */
    background-size: cover;
    height: 100vh;
    padding: 20px 30px;
}

.logo-sec img {
    width: 300px;
}

.banner-sec {
    margin-top: 30px;
}

.banner-txt h5 {
    font-size: 31px;
    text-transform: uppercase;
}

.banner-txt h5,
.banner-adm h3,
.banner-adm a,
h2,
h1 {
    text-transform: uppercase;
}

.banner-box-sec {
    display: flex;
    gap: 30px;
    margin-top: 30px;
}

.banner-box {
    background: var(--red);
    padding: 25px 30px;
    color: var(--white);
    text-align: center;
    margin-bottom: 20px;
    width: 280px;
    box-shadow: -10px 17px 15px #919090;
}

.banner-box.bl {
    background: var(--black);
}

.ban-box:last-child {
    margin-top: 110px;
}

.banner-adm {
    margin-top: -50px;
}

.banner-adm h3 {
    line-height: 1;
    font-size: 40px;
}

.banner-adm a {
    font-size: 40px;
}

.banner-adm a,
h2 b,
.appro p:hover,
.edge-txt h3,
.legal-txt h5,
.global-img h3 {
    color: var(--red);
}

/* header css end */

/* approtext css start */
.approTxt-sec {
    display: flex;
}

.appro {
    flex: 1;
    border-right: 2px solid var(--gray);
    margin-right: 40px;
    padding-right: 40px;
    justify-items: center;
}

.appro:last-child {
    border-right: 0;
    margin-right: 0;
    padding-right: 0;
}

.appro p {
    font-size: 25px;
}

/* approtext css end */

/* programme css start */
.programme-sec {
    padding-left: 80px;
}

.programme-sec p,
.edge-para p {
    text-align: justify;
    line-height: 1.5;
}

/* programme css end */

/* key css start */
.key {
    background: var(--gray);
}

.key-section h2,
.legal-sec,
.firm-sec,
.opportunity-sec,
.placement-sec,
.legacy-sec,
.campus-sec {
    text-align: center;
}

.key-box-sec {
    height: 550px;
}

.key-box-sec,
.keydiff-sec {
    display: flex;
    gap: 20px;
}

.keydiff {
    background: var(--red);
    color: var(--white);
    padding: 30px 25px;
    margin-bottom: 20px;
}

.keydiff-sec .keydiff,
.key-box .keydiff:last-child {
    margin-bottom: 0;
}

.keydiff.wh {
    background: var(--white);
    color: var(--black);
}

.keydiff.bl {
    background: var(--black);
}

.key-box:first-child {
    flex: 2;
    position: relative;
}

.key-img {
    position: absolute;
    left: -80px;
    bottom: -20px;
}

.key-img img {
    width: 420px;
}

.key-box {
    flex: 1;
}

.keydiff h5 {
    font-size: 28px;
    font-family: 'Gotham-Black';
    margin-bottom: 5px;
}

.key-box:nth-of-type(2) .keydiff,
.key-box:nth-of-type(3) .keydiff:nth-of-type(1),
.key-box:nth-of-type(3) .keydiff:nth-of-type(2) {
    align-content: end;
}

.key-box:nth-of-type(2) .keydiff {
    height: 272px;
}

.key-box:nth-of-type(3) .keydiff:nth-of-type(1) {
    height: 340px;
}

.key-box:nth-of-type(3) .keydiff:nth-of-type(2) {
    height: 205px;
}

.keydiff-sec .keydiff:nth-of-type(1) {
    height: 250px;
    width: 55%;
    padding-top: 70px;
}

.keydiff-sec .keydiff:nth-of-type(2) {
    height: 400px;
    width: 45%;
    align-content: end;
}

/* key css end */

/* edge css start */
.edge {
    background: var(--peach);
}

.edge-txt-sec {
    padding-left: 100px;
}

.edge-txt {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.edge-txt p {
    font-size: 22px;
}

.edge .col-lg-6:last-child,
.edge-txt {
    position: relative;
}

.edge .col-lg-6:last-child::after,
.edge-txt::after {
    content: '';
    position: absolute;
    width: 80%;
    height: 2px;
    background: var(--gray);
    left: -10px;
    bottom: 0;
}

.edge-txt::after {
    left: 0;
}

.edge-txt:last-child::after {
    background: none;
}

.edge-txt:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
}

/* edge css end */

/* legal css start */
.legal-slider .slick-slide {
    padding: 50px 15px 0;
}

.legal-box {
    display: flex;
    align-items: center;
    gap: 20px;
    background: var(--darkgray);
    padding-right: 20px;
    margin-bottom: 30px;
    position: relative;
    z-index: 1;
}

.legal-box-sec .legal-box:last-child {
    margin-bottom: 0;
}

.legal-box::after {
    content: '';
    position: absolute;
    width: 0;
    height: 100%;
    background: var(--red);
    left: 0;
    top: 0;
    transition: all 0.5s;
    z-index: -1;
}

.legal-box:hover::after {
    width: 100%;
}

.legal-slider .slick-current.slick-active+.slick-active .legal-box {
    padding: 0 0 0 25px;
}

.legal-txt,
.legal-img {
    flex: 1;
}

.legal-box:hover .legal-txt h5,
.legal-box:hover .legal-txt p {
    color: var(--white);
}

.legal-txt h5 {
    font-size: 25px;
    margin-bottom: 15px;
}

.programme-sec p,
.legal-txt p {
    font-family: 'GothamBook';
}

.legal-img {
    margin-top: -20px;
}

.legal-img img {
    height: 300px;
}

.legal-arrows,
.opportunity-arrows {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}

.legal-arr:hover,
.opportunity-arr:hover {
    border: 2px solid var(--white);
    background: var(--red);
}

.legal-arr:hover img,
.opportunity-arr:hover img {
    filter: brightness(0) invert(1);
}

.legal-arr#next img,
.opportunity-arr#next1 img {
    transform: rotate(180deg);
}

/* Hover effect */


/* Make the SVG icon white on hover */
.opportunity-arr:hover img {
    filter: brightness(0) invert(1);

}

/* legal css end */


/* firm css start */
.firm-slider,
.opportunity-slider {
    margin-top: 50px;
}

.firm-img.bst figure:first-child,
.opportunity-img figure:first-child {
    border-bottom: 2px dashed var(--gray);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.opportunity-img figure:first-child {
    border-bottom: 2px solid var(--red);
}

.firm-img img,
.opportunity-img img {
    width: 200px;
    aspect-ratio: 2 / 1;
    object-fit: contain;
}

/* .firm-img figure:last-child img {
    text-align: center;
    margin: 0 auto;
} */

.opportunity {
    background: #f4f4f4;
}

.opportunity-img img {
    margin: 0 auto;
}

.firm-img-sec {
    margin-top: 50px;
}

.firm-img.int {
    display: flex;
    justify-content: space-between;
}

.firm-img.int:last-child {
    justify-content: space-evenly;
    border-top: 2px dashed var(--gray);
    padding-top: 30px;
    margin-top: 30px;
}

.firm-slider {
    display: none;
}

/* firm css end */


/* placement css start */
.placement {
    background: url(../images/insight.webp) no-repeat;
    background-size: cover;
    padding-top: 150px;
}

.placement-box {
    background: rgba(223, 32, 57, 0.8);
    padding: 80px 30px;
}

.placement-sec h2,
.placement-sec h2 b,
.placement-txt,
.global-img p,
.legacy-sec h2,
.legacy-txt {
    color: var(--white);
}

.placement-slider {
    text-align: center;
}

.placement-txt h4 {
    font-size: 70px;
    font-family: 'Gotham-Ultra';
}

.placement-txt h4 span {
    font-size: 25px;
    margin-left: 5px;
}

.placement-txt sup {
    font-size: 40px;
}

/* placement css end */

/* global css start */
.global-txt p,
.legacy-txt p {
    line-height: 1.5;
}

.global-img h3 {
    font-size: 60px;
    border-bottom: 2px solid var(--white);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.global-img {
    padding-top: 30px;
}

.global-img figure {
    position: relative;
}

.global-img figcaption {
    position: absolute;
    top: 50%;
    left: 70px;
    transform: translateY(-50%);
}

/* global css end */

/* legacy css start */
.legacy {
    background: url(../images/legacy.webp) no-repeat;
    background-size: cover;
}

.legacy-sec {
    margin-bottom: 50px;
}

.legacy-img-sec {
    background: var(--peach);
    padding: 30px 50px;
    margin-left: 50px;
}

.legacy-img {
    display: flex;
    justify-content: space-between;
}

.legacy-img:first-child {
    border-bottom: 2px solid #f4ced6;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.legacy-img img {
    width: 210px;
    aspect-ratio: 2 / 1;
    object-fit: contain;
}

/* legacy css end */

/* lead css start */
.lead,
footer {
    background: var(--peach);
}

.lead {
    position: relative;
    margin-top: 300px;
}

.lead-sec figure {
    display: flex;
    justify-content: center;
}

.lead-sec img {
    max-width: 1250px;
    width: 100%;
    margin-top: -260px;
}

/* lead css end */

/* footer css start */
footer {
    padding-top: 20px;
}

footer p {
    text-align: center;
    margin: 0 auto;
    border-bottom: 10px solid var(--black);
    width: fit-content;
    padding-bottom: 20px;
}

/* footer css end */

/* form css */
.form-sec {
    position: fixed;
    top: 24%;
    right: 0px;
    width: 360px;
    background: #ed1b30;
    padding: 13px 24px 20px;
    z-index: 9;
    transition: .3s all;
    z-index: 9999;
    border-radius: 0;
}

.form-sec .close {
    position: absolute;
    top: 10px;
    right: 10px;
    color: #ffffff;
    font-size: 21px;
    background: transparent;
    border: none;
    cursor: pointer;
}

.slide-righta.form-sec {
    transform: translatex(120%);
    transition: .3s all;
}

.hides.form-sec {
    transform: translatex(120%);
    transition: .3s all;

}

.adm-txt h3 {
    font-size: 2rem;
    color: #ffffff;
}

.adm-txt h4 {
    font-size: 2.5rem;
    color: #f8e91e;
}

.adm-txt {
    color: #000;
    text-align: center;

    margin-bottom: 12px;
    line-height: 30px;
}

.form-group {
    margin-bottom: 1rem;
    width: 100%;
}

.form-sec .form-group {
    position: relative;
    padding-left: 20px;
    background: #ffffff;
    border-radius: 0;
    margin-bottom: 21px;
}

.form-sec .form-group::before {
    position: absolute;
    content: "";
    background-image: url(form-icon.png);
    width: 30px;
    height: 40px;
    background-position: -3px -11px;
    top: 7px;
    left: 4px;
}

.form-sec .form-group.email::before {
    background-position: -3px -57px;
    width: 30px;
}

.form-sec .form-group.Mobile::before {
    background-position: -4px -103px;
}

.form-sec .form-group.State::before {
    background-position: 1px -161px;
    top: 5px;
    height: 25px;
    width: 33px;
    background-size: 30px;
}

.form-sec .form-group.City::before {
    background-position: -3px -242px;
    top: 5px;
    height: 21px;
}

.checkmark {
    position: absolute;
    top: 3px;
    left: 0;
    height: 14px;
    width: 14px;
    border: solid 1px #fff;
    border-radius: 0;
}

.checkbox-label input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkbox-label .checkmark::after {
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.checkbox-label input:checked~.checkmark:after {
    display: block;
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.checkbox-label {
    display: block;
    position: relative;
    padding-left: 20px;
    margin-bottom: -1px;
    cursor: pointer;
    font-size: 14px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    color: #ffffff;
    line-height: 19px;
}

.sbt {
    border: solid 1px var(--form-submit-button);
    border-radius: 0;
    padding: 8px 20px;
    color: #fff;
    font-weight: bold;
    margin: 14px auto 0;
    width: 100%;
    display: inherit;
    font-size: 20px;
    background-color: #000;
}

.input {
    border: none;
    padding: 0;
    height: 30px;
    width: 100%;
    border-radius: 0;
    font-size: 13px;
    color: #000000;
    background: rgb(255 255 255);
    outline: 0;
    font-weight: 600;
}

::placeholder {
    color: #000000;
}

.form-sec.show.slide {
    right: 40px;
}

.form-sec.show {
    position: fixed;
    right: -940px;
    left: auto;
    transition: all 0.5s;
    z-index: 99;
    top: 48%;
    margin-top: -203px;
}

.topenq1.mobile {
    display: none;
}

.topenq {
    right: 0px;
    transform: rotate(90deg) translatey(-39px);
}

.topenq {
    position: fixed;
    top: 40%;
    right: -55px;
    transform: rotate(90deg);
    overflow: hidden;
    z-index: 300;
    background-color: var(--enquiry-button-background-color);
    color: #fff;
    outline: none;
    z-index: 999;
}

.topenq a:hover {
    outline: none;
    background: #ed1b30;
    color: #fff;
    border: none;
}

.topenq a {
    border: none;
    color: #ffffff;
    font-size: 20px;
    padding: 13px 21px;
    z-index: 999999999;
    position: relative;
    display: inline-block;
    background-color: #ed1b30;
    text-decoration: none;
}

.error {
    color: #fdf8f8;
    font-size: 12px;
    margin-left: 4px;
    position: absolute;
    bottom: -15px;
    left: 0px;
    line-height: 11px;
    font-family: 'GothamBook';
}

@media (max-width: 576px) {
    .form-sec {
        width: 95%;
        padding: 20px;
        position: static;
        transform: none;
        transform: initial;
        margin: auto;
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .form-sec .close {
        display: none;
    }

    .slide-righta .form-sec {
        right: 0;
        display: none;
    }

    .topenq {
        position: fixed;
        top: auto;
        top: initial;
        width: 100%;
        right: auto;
        right: initial;
        transform: none;
        transform: initial;
        overflow: hidden;
        z-index: 300;
        bottom: 0;

    }

    .topenq1.mobile {

        display: block;

    }

    .topenq.desktop {

        display: none;
    }

    .topenq1 {
        position: fixed;
        top: auto;
        top: initial;
        width: 100%;
        right: auto;
        right: initial;
        transform: none;
        transform: initial;
        overflow: hidden;
        z-index: 300;
        bottom: 0;
        z-index: 9999;
        background: #00ada7;
    }

    .special_item:focus-visible {
        outline: none;
    }

    .topenq1.mobile a {
        display: block;
        text-align: center;
        background-color: #e31837;
        padding: 15px;
        transition: all 0.3s ease;
        color: white;
        font-size: 16px;
        text-decoration: none;
        font-weight: 600;
    }

    .slide-righta.active .side-slide-form-wrap {

        display: block;

    }

    .admission {

        margin-top: 0rem;
    }

}

@media (max-width: 412px) {
    .form-sec {
        margin-bottom: 35px;
    }
}

.hjghj {

    display: flex;

    justify-content: space-between;

    padding-top: 15px;

}

.hjghj a {

    text-decoration: none;

    color: #ffffff;

    font-size: 0.7rem;

}

.hideme {
    display: none;
}

.btnBox {
    text-align: center;
    margin-top: 20px;
}

.btnBox a {
    background: #ce892e;
    color: #fff;
    text-decoration: none;
    padding: 10px 20px;
}

/* form css */