.vivekanand-page {
            background: var(--bg);
            color: var(--hi-ink);
        }

        .vivekanand-stats {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 14px;
            margin: 0;
            padding: 0;
            list-style: none;
        }

        .vivekanand-stat {
            padding: 18px;
            border: 1px solid rgba(121, 43, 42, .14);
            border-radius: 8px;
            background: rgba(255, 252, 246, .84);
            box-shadow: 0 16px 40px rgba(82, 50, 34, .08);
        }

        .vivekanand-stat strong {
            display: block;
            color: var(--hi-maroon);
            font-family: "Noto Serif Devanagari", serif;
            font-size: clamp(1.45rem, 2.4vw, 2.35rem);
            line-height: 1.12;
        }

        .vivekanand-stat span {
            display: block;
            margin-top: 8px;
            color: #67584e;
            font-weight: 700;
            line-height: 1.55;
        }

        .vivekanand-section {
            padding: clamp(76px, 9vw, 120px) 0;
        }

        .vivekanand-section--intro {
            padding-top: 42px;
        }

        .vivekanand-section--soft {
            background:
                var(--bg);}

        .vivekanand-grid {
            display: grid;
            grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
            gap: clamp(38px, 6vw, 82px);
            align-items: start;
        }

        .vivekanand-grid--reverse .vivekanand-media {
            order: 2;
        }

        .vivekanand-copy h2 {
            margin: 0 0 20px;
            color: var(--hi-ink);
            font-size: clamp(2rem, 3.45vw, 3.9rem);
            line-height: 1.18;
            letter-spacing: 0;
        }

        .vivekanand-copy p {
            margin: 0 0 18px;
            color: #5b4a41;
            font-size: 1.08rem;
            line-height: 1.95;
        }

        .vivekanand-copy strong {
            color: var(--hi-maroon);
        }

        .vivekanand-media {
            overflow: hidden;
            min-height: 420px;
            border: 1px solid rgba(198, 148, 53, .24);
            border-radius: 8px;
            background: #f7ead8;
            box-shadow: 0 26px 70px rgba(82, 50, 34, .15);
        }

        .vivekanand-media img {
            width: 100%;
            height: 100%;
            min-height: 420px;
            object-fit: cover;
            display: block;
            filter: saturate(1.05) contrast(1.02);
        }

        .vivekanand-sankalp-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
            margin-top: 38px;
        }

        .vivekanand-sankalp {
            padding: 28px;
            border: 1px solid rgba(198, 148, 53, .2);
            border-radius: 8px;
            background: rgba(255, 252, 246, .88);
            box-shadow: 0 20px 52px rgba(82, 50, 34, .08);
        }

        .vivekanand-sankalp span {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 48px;
            height: 48px;
            margin-bottom: 20px;
            border-radius: 999px;
            color: #fffaf1;
            background: var(--hi-maroon);
            font-family: "Noto Serif Devanagari", serif;
            font-weight: 800;
        }

        .vivekanand-sankalp h3 {
            margin: 0 0 12px;
            color: var(--hi-ink);
            font-size: 1.32rem;
            line-height: 1.45;
        }

        .vivekanand-sankalp p {
            margin: 0;
            color: #62534a;
            line-height: 1.75;
        }

        .vivekanand-reach {
            background: linear-gradient(180deg, #fffaf1 0%, #f7ead8 100%);
        }

        .vivekanand-stats {
            margin-top: 34px;
        }

        /* full-width band directly in .hi-shell, below the two-column grid */
        .vivekanand-quote {
            margin-top: clamp(40px, 5vw, 56px);
            padding: clamp(28px, 3.6vw, 46px) clamp(24px, 4vw, 56px);
            border-top: 3px solid var(--hi-gold);
            border-radius: 8px;
            background: rgba(255, 252, 246, .84);
            box-shadow: 0 18px 48px rgba(82, 50, 34, .08);
            text-align: center;
        }

        .vivekanand-quote p {
            max-width: 56ch;
            margin: 0 auto;
            color: var(--hi-ink);
            font-family: "Noto Serif Devanagari", serif;
            font-size: clamp(1.24rem, 1.9vw, 1.65rem);
            font-weight: 700;
            line-height: 1.75;
            text-wrap: balance;
        }

        .vivekanand-closing {
            padding: clamp(80px, 10vw, 130px) 0;
            text-align: center;
            background:
                linear-gradient(180deg, rgba(255, 250, 241, .7), rgba(255, 250, 241, .96)),
                url("../../images/gallery/scholarship-distribution/15-card.webp") center / cover no-repeat;
        }

        .vivekanand-actions {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 14px;
            margin-top: 30px;
        }

        @media (max-width: 980px) {

            .vivekanand-grid,
            .vivekanand-grid--reverse {
                grid-template-columns: 1fr;
            }

            .vivekanand-grid--reverse .vivekanand-media {
                order: 0;
            }

            .vivekanand-sankalp-grid,
            .vivekanand-stats {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 640px) {

            .vivekanand-media,
            .vivekanand-media img {
                min-height: 300px;
            }
        }
