:root {
            --spacing-card: 15%;
        }

        html {
            overflow-x: hidden !important;
            overflow-y: visible !important;
        }

        .topeffect {
            opacity: 0;
            transform: translateY(200px);
        }

        @keyframes slideUp {
            0% {
                transform: translateY(30px);
                opacity: 0;
            }

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

        .single-card .quotes-box {
            right: 5vw;
        }

        .Card {
            width: 100%;
        }

        @media only screen and (max-width: 768px) {
            .single-card .quotes-box {
                right: 9vw;
                bottom: 1vw;
            }


        }

        .right-border {
            position: relative;
            padding: 0px;
            margin-left: 23px;
        }

        .right-border::after {
            content: '';
            position: absolute;
            height: 0;
            width: 1px;
            border: 3px solid #ECB24F;
            border-radius: 40px 0 0 0;
            border-right: none;
            border-bottom: none;
            top: -5.2%;
            left: -2%;
            pointer-events: none;
            transition: none;
        }

        /* Animate when class is added */
        .right-border.animate-border::after {
            animation: drawLine 3s linear forwards;
        }

        .quotes-box-century {
            width: 80%;
            position: relative;
            /* top: 50%; */
            /* left: 50%; */
            margin: 0 auto;
            /* transform: translate(-50%, -50%); */
            text-align: center;
            background: #fff;
            /* height: 35vh; */
            border-radius: 1vw;
            /* box-shadow: 0 0 10px gray; */
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--blue);

            /* font-weight: 600; */
        }

        .quotes-box-century:after {
            content: '';
            height: 110%;
            width: 103%;
            box-shadow: 0 0 10px #393939;
            position: absolute;
            border-radius: 1vw;
            top: 50%;
            background: #fff5e6;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: -1;
        }

        .top-quote-century {
            position: absolute;
            height: 2vw !important;
            width: auto !important;
            top: 5px;
            left: 12%;
            right: 0;
            mix-blend-mode: darken;
        }

        .bottom-quote-century {
            position: absolute;
            height: 40px;
            width: auto !important;
            bottom: -2px;
            right: 12%;
            transform: rotate(180deg);
            mix-blend-mode: darken;
            height: 2vw !important;
        }

        @media only screen and (max-width: 768px) {
            .bottom-quote-century {
                height: 14vw !important;
                right: 16.5vw;
            }

            .top-quote-century {

                height: 14vw !important;
                top: -4.3vw;
                left: -15vw;

            }

            .right-border::after {
                left: -25px !important;
                top: -5.2vw !important;
            }


        }

        @media (max-width: 1600px) {

            .top-quote-century {
                top: 1px !important;
                left: 102px !important;
            }
        }

        @keyframes drawLine {
            0% {
                width: 1px;
                height: 0;
            }

            50% {
                width: 1px;
                height: 67%;
            }

            100% {
                width: 102%;
                height: 105%;
            }

        }

        @media only screen and (max-width: 1199px) {
            .single-card {
                height: 240px;
                width: 100%;
            }

            .single-card .img-box img {
                height: 100%;
                object-fit: cover;
            }

            .right-border::after {
                left: -4%;
            }
        }

        @media (max-width: 768px) {
            .right-border {
                margin-left: 15px;
            }

            @keyframes drawLine {
                0% {
                    width: 1px;
                    height: 0;
                }

                50% {
                    width: 1px;
                    height: 67%;
                }

                100% {
                    width: 107%;
                    height: 107%;
                }
            }
        }

        /* Leadership Positions Styles */
        .leadership-positions-section {
            padding: 80px 0;
            background-color: #fff;
            position: relative;
            z-index: 100 !important;
            display: block !important;
            overflow: visible !important;
        }

        .lp-title {
            color: #173c5f;
            font-weight: 400;
            margin-bottom: 60px;
            text-align: center;
            font-size: 2.5vw;
            line-height: 3vw;
        }

        .lp-container {
            max-width: 1100px;
            margin: 0 auto;
            position: relative;
        }

        .lp-row {
            display: flex;
            align-items: center;
            margin-bottom: 80px;
            position: relative;
        }

        .lp-row-reverse {
            flex-direction: row-reverse;
        }

        .lp-image-box {
            width: 65%;
            position: relative;
            z-index: 1;
        }

        .lp-image-box img {
            width: 100%;
            border-radius: 20px;
            display: block;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }

        .lp-image-border {
            position: absolute;
            top: -20px;
            bottom: -20px;
            left: -20px;
            right: -20px;
            border: 2px solid;
            border-radius: 30px;
            z-index: -1;
            width: 100%;
            height: 100%;
        }

        .lp-row:nth-child(odd) .lp-image-border {
            border-color: #ecb250;
            transform: translate(-10px, -10px);
            width: 100%;
            height: 100%;
        }

        .lp-row:nth-child(even) .lp-image-border {
            border-color: #ecb250;
            transform: translate(10px, 10px);
            left: auto;
            right: -20px;
            width: 100%;
            height: 100%;
        }

        .lp-card {
            width: 45%;
            height: 250px;
            padding: 40px 30px;
            border-radius: 20px;
            box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
            z-index: 2;
            cursor: pointer;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            display: flex;
            align-items: center;
            justify-content: center;
            position: absolute;
        }

        .lp-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
        }

        .lp-card-blue {
            background-color: #00416b;
            color: #fff;
            right: 0;
        }

        .lp-card-yellow {
            background-color: #ecb250;
            color: #173c5f;
            left: 0;
        }

        .lp-card h3 {
            font-size: 32px;
            font-weight: 500;
            margin: 0;
            display: flex;
            align-items: center;
            color: #FFF;
        }

        .lp-card .arrow-icon {
            width: 40px;
            height: 40px;
            border: 2px solid currentColor;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-left: 20px;
            font-size: 20px;
        }

        /* Modal Styles */
        .lp-modal {
            display: none;
            position: fixed;
            z-index: 9999;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.7);
            backdrop-filter: blur(5px);
            align-items: center;
            justify-content: center;
            padding: 20px;
            overflow-y: auto;
        }

        .lp-modal-content {
            background-color: #fff;
            padding: 20px;
            max-width: 600px;
            width: 90%;
            position: relative;
            text-align: left;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
            max-height: calc(100vh - 40px);
            overflow-y: auto;
        }

        .lp-modal-close {
            position: absolute;
            top: 20px;
            right: 25px;
            font-size: 35px;
            cursor: pointer;
            color: #173c5f;
            line-height: 1;
        }

        .lp-modal-title {
            color: #173c5f;
            font-size: 22px;
            font-weight: 600;
            margin-bottom: 20px;
            display: none;
            /* title is embedded in the body content */
        }

        .lp-modal-body {
            color: #333;
            font-size: 15px;
            line-height: 1.6;
            font-family: 'Lato', sans-serif;
        }

        .lp-modal-body .lp-role-item {
            padding: 14px 0;
            border-bottom: 1px dashed #aaa;
        }

        .lp-modal-body .lp-role-item:last-child {
            border-bottom: none;
        }

        .lp-modal-body .lp-role-title {
            font-size: 18px;
            font-weight: 700;
            color: #173c5f;
            margin-bottom: 6px;
        }

        .lp-modal-body .lp-role-title::before {
            content: '• ';
        }

        .lp-modal-body .lp-role-desc {
            font-size: 14px;
            color: #173c5f;
            font-family: 'Merriweather', serif;
            line-height: 1.7;
            margin: 0;
        }

        /* Grade 9 image box: border draws from top-right → down → left */
        .lp-border-rtob {
            position: relative;
        }

        .lp-border-rtob::after {
            content: '';
            position: absolute;
            height: 0;
            width: 1px;
            border-right: 3px solid #ECB24F;
            border-bottom: 3px solid #ECB24F;
            border-left: none;
            border-top: none;
            border-radius: 0 0 28px 0;
            /* bottom-right rounded corner */
            top: 2%;
            right: -4%;
            left: auto;
            pointer-events: none;
            transition: none;
        }

        .lp-border-rtob.lp-border-animate::after {
            animation: drawLineRtoB 3s linear forwards;
        }

        @keyframes drawLineRtoB {
            0% {
                width: 1px;
                height: 0;
            }

            50% {
                width: 1px;
                height: 105%;
            }

            100% {
                width: 102%;
                height: 105%;
            }
        }

        @media (max-width: 991px) {
            .lp-row {
                flex-direction: column;
                margin-bottom: 60px;
            }

            .lp-image-box {
                width: 90%;
            }

            .lp-card {
                position: relative;
                width: 80%;
                margin-top: -50px;
                right: auto;
                left: auto;
            }

            .lp-title {
                font-size: 28px;
            }
        }

:root {
            --spacing-card: 15%;
        }

        html {
            overflow-x: hidden !important;
            overflow-y: visible !important;
        }

        .ylw-bg {
            background-color: #ecb250 !important;
        }

        .blu-bg {
            background-color: #134168 !important;
        }

        .light-blu-bg {
            background-color: #5aadde !important;
        }

        .bg-color-heres {
            background-color: #00416b !important;
        }

        .w-40 {
            width: 40% !important;
        }

        .w-80 {
            width: 80% !important;
        }

        .weight-700 {
            font-weight: 700 !important;
        }

        .border-dotted {
            border-bottom: 3px dotted #000 !important;
        }

        .academic-card .Card {
            border-radius: 1vw !important;
            box-shadow: 0 0 15px #25252587;
        }

        .brd-left {
            border-left: 2px dotted #003366;
        }

        .heigh33 {
            margin-top: 0 !important;
            height: 88vh !important;
        }

        .history-cards p {
            color: #003366 !important;
            font-family: 'Merriweather', serif;
            letter-spacing: 1px;
            font-size: 1.2vw;
            text-align: center;
        }


        .contain-hover {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
        }

        /* Change circle-arrow SVG color to gold (#ecb250) for card1 only */
        #card1 .svg-section-big embed {
            filter: brightness(0) saturate(100%) invert(83%) sepia(35%) saturate(1500%) hue-rotate(357deg) brightness(110%) !important;
        }

        .card {
            position: relative;
            border-radius: 22px;
            overflow: hidden;
            flex: 15%;
            height: calc(100vh - 100px);
            margin: 15px 0px;
            cursor: pointer;
            transition: all 1.5s;
            border: none;
        }

        .card::before {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(0deg, #134168db 20%, transparent 39%);
        }

        .txt-con {
            position: absolute;
            bottom: 50px;
            left: 33px;
            right: 10px;
            /* transition: all 1.5s; */
        }

        .card p {
            font-family: 'Lato', sans-serif;
            color: #FFF !important;
            font-size: 30px;
            font-weight: 400;
            line-height: 100% !important;
        }

        .card:hover {
            flex: 95vw;
        }

        .card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .head-txt h2 {
            color: #FFF;
            font-family: 'Lato', sans-serif;
            font-size: 34px !important;
            font-weight: 700;
            text-align: left;
            margin-bottom: 0 !important;
            font-style: normal !important;
        }

        .head-txt h2 span {
            font-style: normal !important;
        }

        .head-txt p {
            color: #fff;
            /* font-size: 1vw !important;
        line-height: 1.6vw !important;
        font-family: 'Merriweather', serif !important;
        color: #fff;
        font-weight: 400;
        text-align: left; */
        }

        .head-txt h2 {
            color: #FFF;
            font-family: 'Lato', sans-serif;
            font-size: 34px !important;
            font-weight: 700;
            text-align: left;
            margin-bottom: 0 !important;
            font-style: normal !important;
            overflow: visible !important;
        }

        .animated-line:nth-child(even) .img-section:before {
            background-color: #003366 !important;
        }

        .head-txt ul li span {
            font-size: 1vw !important;
            line-height: 1.6vw !important;
            font-family: 'Merriweather', serif !important;
            color: #fff;
            /* font-weight: 800 !important; */
            text-align: left;
        }

        .head-txt ul li:before {
            background: #fff;
        }

        .philos-quote {
            position: absolute;
            height: 40px;
            width: auto !important;
            top: -18px;
            left: -4px;
            mix-blend-mode: darken;
        }

        .philos-quote2 {
            position: absolute;
            height: 40px;
            width: auto !important;
            bottom: -2px;
            right: 0px;
            transform: rotate(180deg);
            mix-blend-mode: darken;
        }

        /* Keyframes for draw animation */
        @keyframes drawLine {
            0% {
                height: 0;
                width: 0;
            }

            50% {
                height: 100%;
                width: 0;
            }

            100% {
                height: 100%;
                width: 100%;
            }
        }

        .life-slide .play-btn {
            z-index: 999 !important;
        }

        .life-slide .play-btn {
            opacity: 1;
        }

        .right-border {
            position: relative;
            padding: 15px;
            margin-left: 30px;
            padding-top: 12px;
        }

        .hover-text {
            justify-content: start !important;
            flex-direction: column !important;
            align-items: unset !important;
        }

        .box-section .bottom-title {
            right: 0 !important;
            bottom: 0px !important;
        }

        /* After pseudo-element - border shape */
        .right-border::after {
            content: '';
            position: absolute;
            height: 0;
            width: 1px;
            border: 3px solid #ECB24F;
            border-radius: 40px 0 0 0;
            border-right: none;
            border-bottom: none;
            top: -3%;
            left: -3%;
            pointer-events: none;
            transition: none;
        }

        /* Animate when class is added */
        .right-border.animate-border::after {
            animation: drawLine 3s linear forwards;
        }

        @keyframes slideUp {
            0% {
                transform: translateY(30px);
                opacity: 0;
            }

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


        .accordion {
            max-width: 100%;
            margin: auto;
        }

        .accordion-item {
            border-bottom: 1px solid #1d4a6d !important;
            padding: 15px 0;
            border-left: unset;
            border-right: unset;
            border-top: unset;
        }

        .accordion-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            cursor: pointer;
            font-size: 22px;
            font-weight: bold;
            color: #123456;
            transition: color 0.3s ease;
        }

        .accordion-header:hover {
            color: #f4a620;
        }

        .subject-box {
            text-align: center;
        }



        .subject-icon {
            width: 90px;
            height: 90px;
            border-radius: 50%;
            border: 2px solid #f5a623;
            display: flex;
            justify-content: center;
            align-items: center;
            margin: 1rem auto 0;
            position: relative;
            font-weight: bold;
            color: #1f4568;
            padding: 14px;
        }


        .subject-icon::after {
            content: "";
            position: absolute;
            width: 80px;
            height: 80px;
            border: 2px solid #14446a;
            border-radius: 50%;
        }

        .img {
            width: 100%;
            display: block;
            mix-blend-mode: darken;
        }

        .subject-box p {
            margin-top: 10px;
            font-size: 0.9rem;
            font-weight: 600;
            color: #14446a;
            line-height: 140%;
        }

        .toggle-btn {
            position: relative;
            width: 40px;
            height: 40px;
            background: #f4a620;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease;
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.25);
        }

        .toggle-btn:before,
        .toggle-btn:after {
            content: '';
            position: absolute;
            background: white;
            transition: 0.3s;
        }

        .toggle-btn:before {
            width: 2px;
            height: 14px;
        }

        .toggle-btn:after {
            width: 14px;
            height: 2px;
        }

        .toggle-btn.open {
            transform: rotate(45deg);
        }

        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.6s ease, padding 0.6s ease;
            padding: 0;
        }

        .accordion-content.open {
            padding: 20px 0;
            max-height: max-content;
        }

        .subjects {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
            margin-top: 10px;
        }

        .subject-item {
            text-align: center;
        }

        .animated-line-pune .img-section:before {
            z-index: 9 !important;
        }

        /* Alternate circle colors */
        .subject-circle {
            width: 100px;
            height: 100px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: auto;
            background: #fff;
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
            transition: transform 0.3s ease;
        }

        .img-over {
            width: 100% !important;
            height: auto !important;
            object-fit: cover !important;
        }

        .subject-circle:hover {
            transform: scale(1.05);
        }

        .subject-circle img {
            width: 50px;
            height: 50px;
        }

        .subject-name {
            margin-top: 8px;
            font-size: 14px;
            font-weight: 600;
            color: #333;
        }

        .w-23 {
            width: 23% !important;
            margin: 1% !important;
        }

        .circle-1 {
            border: 3px solid #f4a620;
        }

        .circle-2 {
            border: 3px solid #1d4a6d;
        }

        .circle-3 {
            border: 3px solid #28a745;
        }

        .circle-4 {
            border: 3px solid #dc3545;
        }

        .circle-5 {
            border: 3px solid #6f42c1;
        }

        .weight-800 {
            font-weight: 800;
        }

        .brd-rht-bht {
            position: relative;
        }

        /* .brd-rht-bht:nth-child(-n+4),
    .brd-rht-bht:nth-child(n+6):nth-child(-n+9),
    .brd-rht-bht:nth-child(n+11):nth-child(-n+14) {
        border-right: 2px dotted #03356885;
        border-bottom: 2px dotted #03356885;
    } */

        /* Default state for 5,10,15 bottom border */
        .brd-rht-bht:nth-child(5)::after,
        .brd-rht-bht:nth-child(10)::after,
        .brd-rht-bht:nth-child(15)::after {
            content: "";
            position: absolute;
            inset: 0;
            border-bottom: 2px dotted #03356885;
            width: 0%;
            height: 100%;
        }

        /* Default state for 16,17 right border */
        .brd-rht-bht:nth-child(16)::before,
        .brd-rht-bht:nth-child(17)::before {
            content: "";
            position: absolute;
            inset: 0;
            border-right: 2px dotted #03356885;
            width: 100%;
            height: 0%;
        }

        /* Animate when class is added */
        .brd-rht-bht.animate-line:nth-child(5)::after,
        .brd-rht-bht.animate-line:nth-child(10)::after,
        .brd-rht-bht.animate-line:nth-child(15)::after {
            animation: dotted-line2 1s linear forwards;
        }

        .brd-rht-bht.animate-line:nth-child(16)::before,
        .brd-rht-bht.animate-line:nth-child(17)::before {
            animation: dotted-line 1s linear forwards;
        }

        /* Reuse keyframes */
        @keyframes dotted-line2 {
            0% {
                width: 0%;
            }

            100% {
                width: 100%;
            }
        }

        @keyframes dotted-line {
            0% {
                height: 0%;
            }

            100% {
                height: 100%;
            }
        }

        /* 
    .brd-rht-bht:nth-child(-n+4)::before,
    .brd-rht-bht:nth-child(n+6):nth-child(-n+9)::before,
    .brd-rht-bht:nth-child(n+11):nth-child(-n+14)::before {
        content: "";
        position: absolute;
        inset: 0;
        border-right: 2px dotted #03356885;
        border-bottom: 2px dotted #03356885;
        width: 100%;
        animation: dotted-line 1s linear 1;
    }

    @keyframes dotted-line {
        0% {
            height: 0%;
        }

        100% {
            height: 100%;
        }
    } */
        .sld1.head-txt ul li:before {
            display: none;
        }

        /* Default state */
        .brd-rht-bht:nth-child(-n+4)::after,
        .brd-rht-bht:nth-child(n+6):nth-child(-n+9)::after,
        .brd-rht-bht:nth-child(n+11):nth-child(-n+14)::after {
            content: "";
            position: absolute;
            inset: 0;
            border-bottom: 2px dotted #03356885;
            width: 0%;
            height: 100%;
        }

        .brd-rht-bht:nth-child(-n+4)::before,
        .brd-rht-bht:nth-child(n+6):nth-child(-n+9)::before,
        .brd-rht-bht:nth-child(n+11):nth-child(-n+14)::before {
            content: "";
            position: absolute;
            inset: 0;
            border-right: 2px dotted #03356885;
            width: 100%;
            height: 0%;
        }

        /* Animate only when class added */
        .brd-rht-bht.animate-line:nth-child(-n+4)::after,
        .brd-rht-bht.animate-line:nth-child(n+6):nth-child(-n+9)::after,
        .brd-rht-bht.animate-line:nth-child(n+11):nth-child(-n+14)::after {
            animation: dotted-line2 1s linear forwards;
        }

        .brd-rht-bht.animate-line:nth-child(-n+4)::before,
        .brd-rht-bht.animate-line:nth-child(n+6):nth-child(-n+9)::before,
        .brd-rht-bht.animate-line:nth-child(n+11):nth-child(-n+14)::before {
            animation: dotted-line 1s linear forwards;
        }

        .box-section:hover .hover-text span {
            color: #fff;
            width: 100%;
        }



        @keyframes dotted-line2 {
            0% {
                width: 0%;
            }

            100% {
                width: 100%;
            }
        }

        @keyframes dotted-line {
            0% {
                height: 0%;
            }

            100% {
                height: 100%;
            }
        }

        @media (max-width: 1558px) {


            .box-section:hover .hover-text span {
                /* font-size: 1vw !important; */
            }

            .head-txt h2 {
                font-size: 10px !important;
            }

            /* 
        .brd-rht-bht:nth-child(-n+3),
        .brd-rht-bht:nth-child(n+5):nth-child(-n+7),
        .brd-rht-bht:nth-child(n+9):nth-child(-n+11),
        .brd-rht-bht:nth-child(n+13):nth-child(-n+15) {
            border-right: 2px dotted #03356885;
            border-bottom: 2px dotted #03356885;
        } */

            /* .brd-rht-bht:nth-child(4),
        .brd-rht-bht:nth-child(8),
        .brd-rht-bht:nth-child(12),
        .brd-rht-bht:nth-child(16) {
            border-right: unset !important;
            border-bottom: 2px dotted #03356885 !important;
        } */

            /* .brd-rht-bht:nth-child(17) {
            border-right: 2px dotted #03356885;
        } */
        }

        @media (min-width: 885px) and (max-width: 1200px) {

            .subjects {
                grid-template-columns: 1fr 1fr 1fr 1fr;
            }

            .contain-hover {
                flex-wrap: wrap;
                height: auto;
            }

            .card {
                flex: 43% !important;
            }

            .w-23 {
                width: 48% !important;
            }


            /* Default state */
            .brd-rht-bht:nth-child(-n+3)::before,
            .brd-rht-bht:nth-child(n+5):nth-child(-n+7)::before,
            .brd-rht-bht:nth-child(n+9):nth-child(-n+11)::before,
            .brd-rht-bht:nth-child(n+13):nth-child(-n+15)::before {
                content: "";
                position: absolute;
                inset: 0;
                border-right: 2px dotted #03356885;
                height: 0%;
                width: 100%;
            }

            .brd-rht-bht:nth-child(-n+3)::after,
            .brd-rht-bht:nth-child(n+5):nth-child(-n+7)::after,
            .brd-rht-bht:nth-child(n+9):nth-child(-n+11)::after,
            .brd-rht-bht:nth-child(n+13):nth-child(-n+15)::after {
                content: "";
                position: absolute;
                inset: 0;
                border-bottom: 2px dotted #03356885;
                width: 0%;
                height: 100%;
            }

            /* Special case: only bottom border for 4,8,12,16 */
            .brd-rht-bht:nth-child(4)::before,
            .brd-rht-bht:nth-child(8)::before,
            .brd-rht-bht:nth-child(12)::before,
            .brd-rht-bht:nth-child(16)::before {
                border-right: unset !important;
                height: 0 !important;
            }

            .brd-rht-bht:nth-child(4)::after,
            .brd-rht-bht:nth-child(8)::after,
            .brd-rht-bht:nth-child(12)::after,
            .brd-rht-bht:nth-child(16)::after {
                border-bottom: 2px dotted #03356885 !important;
                width: 0%;
                height: 100%;
            }

            /* Animate only when class added */
            .animate-line:nth-child(-n+3)::before,
            .animate-line:nth-child(n+5):nth-child(-n+7)::before,
            .animate-line:nth-child(n+9):nth-child(-n+11)::before,
            .animate-line:nth-child(n+13):nth-child(-n+15)::before {
                animation: dotted-line 1s linear forwards;
            }

            .animate-line:nth-child(-n+3)::after,
            .animate-line:nth-child(n+5):nth-child(-n+7)::after,
            .animate-line:nth-child(n+9):nth-child(-n+11)::after,
            .animate-line:nth-child(n+13):nth-child(-n+15)::after,
            .animate-line:nth-child(4)::after,
            .animate-line:nth-child(8)::after,
            .animate-line:nth-child(12)::after,
            .animate-line:nth-child(16)::after {
                animation: dotted-line2 1s linear forwards;
            }

            /* Keyframes */
            @keyframes dotted-line {
                0% {
                    height: 0%;
                }

                100% {
                    height: 100%;
                }
            }

            @keyframes dotted-line2 {
                0% {
                    width: 0%;
                }

                100% {
                    width: 100%;
                }
            }
        }

        @media (max-width: 885px) {
            .box-section:hover .hover-text span {
                /* font-size: 4vw !important; */
            }

            .card {
                flex: 98% !important;
            }
        }

        @media (max-width:767px) {
            .brd-left {
                border-top: 2px dotted #003366 !important;
                border-left: unset !important;
                padding-top: 20px !important;
            }

            .brd-rht-bht:nth-child(even)::before {
                border-right: none !important;
            }

            .brd-rht-bht:nth-child(5):before,
            .brd-rht-bht:nth-child(15):before {
                content: "";
                position: absolute;
                inset: 0;
                border-right: 2px dotted #03356885 !important;
                width: 100%;
                height: 0%;
            }

            .brd-rht-bht.animate-line:nth-child(5)::before,
            .brd-rht-bht.animate-line:nth-child(15)::before {
                animation: dotted-line 1s linear forwards;
            }

            .brd-rht-bht:nth-child(16):after {
                content: "";
                position: absolute;
                inset: 0;
                border-bottom: 2px dotted #03356885 !important;
                width: 0%;
                height: 100%;
            }

            .brd-rht-bht.animate-line:nth-child(16)::after {
                animation: dotted-line2 1s linear forwards;
            }

            .card {
                height: calc(50vh - 100px);
            }

            .w-23 {
                margin-bottom: 10% !important;
            }
        }

        @media (min-width: 1200px) and (max-width: 24000px) {

            /* .txt-con {
            transition: transform 0.3s;
        } */

            .card p {
                display: inline-block;
                white-space: nowrap;
            }

            .card:hover~.card~.card .txt-con a,
            .card:hover~.card~.card~.card .txt-con a,
            .card:hover~.card~.card~.card~.card .txt-con a,
            .card:hover~.card~.card~.card~.card~.card .txt-con a,
            .card:hover~.card~.card~.card~.card~.card .txt-con a {
                opacity: 0;
                display: none;
            }

            .contain-hover:hover .card:not(:hover) .txt-con a {
                opacity: 0;
                display: none;

            }

            /* Hover kisi bhi card pe karo → baaki sab card ke andar ke text rotate */
            .card:hover .txt-con {
                transform: none;
            }

            .card:hover~.card~.card .txt-con,
            .card:hover~.card~.card~.card .txt-con,
            .card:hover~.card~.card~.card~.card .txt-con,
            .card:hover~.card~.card~.card~.card~.card .txt-con,
            .card:hover~.card~.card~.card~.card~.card .txt-con {
                transform: rotate(270deg);
                /* width: fit-content; */
                bottom: 200px;
            }

            .contain-hover:hover .card:not(:hover) .txt-con {
                transform: rotate(270deg);
                /* width: fit-content; */
                bottom: 100px;
            }

            .contain-hover:hover .card:not(:hover):not(:has(~ .card:hover)) .txt-con {
                transform: rotate(270deg);
                bottom: 100px;
            }
        }

        @media (min-width: 600px) and (max-width: 885px) {


            .contain-hover {
                flex-wrap: wrap;
                height: auto;
            }

            .subjects {
                grid-template-columns: 1fr 1fr 1fr;
            }

            /* Default state (Right + Bottom) */
            .brd-rht-bht:nth-child(-n+2)::before,
            .brd-rht-bht:nth-child(n+4):nth-child(-n+5)::before,
            .brd-rht-bht:nth-child(n+7):nth-child(-n+8)::before,
            .brd-rht-bht:nth-child(n+10):nth-child(-n+11)::before,
            .brd-rht-bht:nth-child(n+13):nth-child(-n+14)::before {
                content: "";
                position: absolute;
                inset: 0;
                border-right: 2px dotted #03356885;
                height: 0%;
                width: 100%;
            }

            .brd-rht-bht:nth-child(-n+2)::after,
            .brd-rht-bht:nth-child(n+4):nth-child(-n+5)::after,
            .brd-rht-bht:nth-child(n+7):nth-child(-n+8)::after,
            .brd-rht-bht:nth-child(n+10):nth-child(-n+11)::after,
            .brd-rht-bht:nth-child(n+13):nth-child(-n+14)::after {
                content: "";
                position: absolute;
                inset: 0;
                border-bottom: 2px dotted #03356885;
                width: 0%;
                height: 100%;
            }

            /* Special case: Only Bottom (3,6,9,12,15) */
            .brd-rht-bht:nth-child(3)::before,
            .brd-rht-bht:nth-child(6)::before,
            .brd-rht-bht:nth-child(9)::before,
            .brd-rht-bht:nth-child(12)::before,
            .brd-rht-bht:nth-child(15)::before {
                border-right: unset !important;
                height: 0 !important;
            }

            .brd-rht-bht:nth-child(3)::after,
            .brd-rht-bht:nth-child(6)::after,
            .brd-rht-bht:nth-child(9)::after,
            .brd-rht-bht:nth-child(12)::after,
            .brd-rht-bht:nth-child(15)::after {
                border-bottom: 2px dotted #03356885 !important;
                width: 0%;
                height: 100%;
            }

            /* Animate only when class added */
            .animate-line:nth-child(-n+2)::before,
            .animate-line:nth-child(n+4):nth-child(-n+5)::before,
            .animate-line:nth-child(n+7):nth-child(-n+8)::before,
            .animate-line:nth-child(n+10):nth-child(-n+11)::before,
            .animate-line:nth-child(n+13):nth-child(-n+14)::before {
                animation: dotted-line 1s linear forwards;
            }

            .animate-line:nth-child(-n+2)::after,
            .animate-line:nth-child(n+4):nth-child(-n+5)::after,
            .animate-line:nth-child(n+7):nth-child(-n+8)::after,
            .animate-line:nth-child(n+10):nth-child(-n+11)::after,
            .animate-line:nth-child(n+13):nth-child(-n+14)::after,
            .animate-line:nth-child(3)::after,
            .animate-line:nth-child(6)::after,
            .animate-line:nth-child(9)::after,
            .animate-line:nth-child(12)::after,
            .animate-line:nth-child(15)::after {
                animation: dotted-line2 1s linear forwards;
            }

            /* Keyframes */
            @keyframes dotted-line {
                0% {
                    height: 0%;
                }

                100% {
                    height: 100%;
                }
            }

            @keyframes dotted-line2 {
                0% {
                    width: 0%;
                }

                100% {
                    width: 100%;
                }
            }


            /* Default state */
            .brd-rht-bht:nth-child(16)::before,
            .brd-rht-bht:nth-child(17)::before {
                content: "";
                position: absolute;
                inset: 0;
                border-right: 2px dotted #03356885;
                height: 0%;
                width: 100%;
            }

            .brd-rht-bht:nth-child(16)::after,
            .brd-rht-bht:nth-child(17)::after {
                border-bottom: unset !important;
                /* bottom nahi chahiye */
            }

            /* Animate only on class */
            .animate-line:nth-child(16)::before,
            .animate-line:nth-child(17)::before {
                animation: dotted-line 1s linear forwards;
            }

            .head-txt ul li span,
            .box-section:hover .hover-text p {
                font-size: 4vw !important;
                line-height: 140% !important;
            }

            .card {
                flex: 43% !important;
            }

            .w-23 {
                width: 48% !important;
            }
        }

        @media (max-width: 500px) {

            .head-txt ul li span,
            .box-section:hover .hover-text p {
                font-size: 4vw !important;
                line-height: 140% !important;
            }

            .w-23 {
                width: 98% !important;
            }

            .contain-hover {
                flex-wrap: wrap;
                height: auto;
            }

            .card {
                flex: 98% !important;
            }
        }

        @media (min-width: 400px) and (max-width: 600px) {

            .w-23 {
                width: 98%;
            }

            .contain-hover {
                flex-wrap: wrap;
                height: auto;
            }

            .subjects {
                grid-template-columns: 1fr 1fr;
            }


        }

        /* >=600px pe hi animation allow hoga */
        @media (min-width: 600px) {
            .brd-rht-bht.animate-line::after {
                animation: dotted-line2 0.6s linear forwards;
            }

        }

        @keyframes dotted-line2 {
            0% {
                width: 0%;
            }

            100% {
                width: 100%;
            }
        }

        /* <600px pe static fully drawn line */
        @media (max-width: 599px) {

            .brd-rht-bht::after {
                width: 100%;
                /* direct full line */
            }

        }

        @media (max-width: 400px) {
            .w-23 {
                width: 98%;
            }

            .subjects {
                grid-template-columns: 1fr;
            }

            .brd-rht-bht {
                border-right: unset !important;
                border-bottom: 2px dotted #03356885 !important;
            }

            .brd-rht-bht:last-child {
                border-right: unset !important;
                border-bottom: unset !important;
            }
        }

        @media (max-width: 540px) {
            .accordion {
                max-width: 100%;
            }
        }

        @media (max-width: 480px) {
            .accordion {
                max-width: 100%;
            }

            @keyframes drawLine {
                0% {
                    height: 0;
                    width: 0;
                }

                50% {
                    height: 100%;
                    width: 0;
                }

                100% {
                    height: 99%;
                    width: 99%;
                }
            }

            .right-border {
                margin-left: 15px;
            }
        }

        section {
            opacity: 1;
        }

        .vertical-scroll-container {
            height: 100vh;
        }

        /* 2. SLIDES WRAPPER (The element being moved) */
        .horizontal-slides-wrapper {
            display: flex;
            flex-wrap: nowrap;
            height: 100vh;
            width: 300vw;
            /* Ensure z-index is high */
            z-index: 9999;
            position: relative;
        }

        /* 3. INDIVIDUAL SLIDES */
        .horizontal-slides-wrapper .slide {
            width: 100vw;
            height: 100vh;
            /* CRITICAL: Prevents the slides from shrinking down */
            flex-shrink: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            color: white;
            /* Changed from red to white for better contrast */
            font-family: sans-serif;
            text-align: center;
            font-size: 3rem;
            border-bottom: 3.5vh solid #1078bc;
            border-radius: 2vw;
            position: relative;
            overflow: hidden;
            /* REMOVED: visibility: hidden; and display: none; */
        }

        .horizontal-slides-wrapper .slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .slid-cont img {
            width: 100px !important;
        }

        .vertical-scroll-container {
            z-index: 9998;
            /* Lower than wrapper, but still high */
            position: relative;
        }

        .slid-cont {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            padding: 2vw;
            padding-right: 0;
            background: linear-gradient(90deg, #042e59 0%, transparent);
        }

        .text-yellow {
            color: var(--secondary-color);
        }

        .accordion {
            padding: 0 2rem;
            background: var(--blue);
            border-radius: 2vw 0 0 2vw;
        }

        .lib-info {
            padding-left: 1rem;
        }

        .lib-info li {
            font-size: 20px;
            text-align: start;
            border-bottom: 2px dotted #ffffff45;
            padding: 0.5rem 0;
        }

        .lib-info li:last-child {
            border-bottom: unset
        }

        .accordion-item:not(:last-child) {
            border-bottom: 1px solid #ffffff8c !important;
        }

        .accordion-content.open {
            padding: 10px 0;
        }

        .accordion-content small {
            font-size: .775em;
            color: #d8d8d8;
        }

        .lib-info .info>span.word {
            margin-bottom: 0px;
            line-height: normal;
        }

        .interact-text {
            font-size: 28px !important;
            padding-bottom: 40px !important;
        }

        .text-right {
            text-align: right !important;
        }

        .interact-first-slide {
            width: 70% !important;
        }

        .mb-20 {
            margin-bottom: 20%;
        }

        .intr-club-img {
            display: flex;
            justify-content: center;
        }

        .intr-club-img img {
            background-color: #FFF;
            padding: 10px;
            border-radius: 50%;
        }

        .slid-cont img {
            width: 45% !important;
        }

        .title-yellow {
            color: #ecb23c;
        }

        .intr-box {
            height: 100%;
            align-items: end;
        }

        .cntr-club-para {
            font-size: 1.6vw !important;
            line-height: 2.1vw !important;
            color: #ecb23c !important;
        }

        .cntr-club-heading {
            font-size: 2.3vw !important;
            line-height: 2.8vw !important;
        }

        .cntr-club-para .info>span.word:before {
            color: #ecb23c !important;
        }

        .intr-histry-box.history-cards .Card {
            box-shadow: none !important;
            padding: 0px !important;
        }

        .intr-histry-box .bg-sec .bg1 {
            height: 100% !important;
        }

        .intr-heading-hstbx h2 {
            text-align: center;
            color: #003366;
            font-weight: 400;
            font-size: 2.3vw !important;
        }

        .intr-slid-cont {
            background: linear-gradient(1deg, #042e59 0%, transparent) !important;
        }

        .left::after {
            border-radius: 0px 0 0 28px;
            border-right: none;
            border-top: none;
            top: 3%;
            left: -2%;
            border-bottom: 3px solid #ECB24F;
        }

        .cntr-club-para.info>span.word:before {
            color: #ecb23c !important;
        }

        .blue-bg2-intr {
            background-color: #026fa5;
        }

        .contain-hover {
            gap: 0px;
        }
