html.lenis, html.lenis-smooth {
            height: auto;
        }
        .lenis.lenis-smooth [data-lenis-prevent] {
            overscroll-behavior: contain;
        }
        .lenis.lenis-stopped {
            overflow: hidden;
        }
        .lenis.lenis-scrolling iframe {
            pointer-events: none;
        }

        body {
            margin: 0;
            padding: 0;
            overflow-x: hidden;
            background-color: #CFE9F0;
        }

        /* Glassmorphism Panel */
        .glass-panel {
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(20px);
            -webkit-backdrop-filter: blur(20px);
            border: 1px solid rgba(255, 255, 255, 0.9);
            box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.08);
        }

        /* Glossy Glassmorphism Navbar */
        .glossy-navbar {
            background: linear-gradient(
                135deg,
                rgba(255, 255, 255, 0.82) 0%,
                rgba(255, 255, 255, 0.6) 50%,
                rgba(240, 253, 244, 0.7) 100%
            ) !important;
            backdrop-filter: blur(24px) saturate(190%) !important;
            -webkit-backdrop-filter: blur(24px) saturate(190%) !important;
            border: 1px solid rgba(255, 255, 255, 0.85) !important;
            box-shadow: 
                0 16px 40px -8px rgba(22, 56, 38, 0.12),
                0 4px 12px -2px rgba(0, 0, 0, 0.05),
                inset 0 1.5px 1px 0 rgba(255, 255, 255, 0.95),
                inset 0 -1px 2px 0 rgba(0, 0, 0, 0.04) !important;
            position: relative;
            overflow: hidden;
        }

        .glossy-navbar::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 48%;
            background: linear-gradient(
                to bottom,
                rgba(255, 255, 255, 0.65) 0%,
                rgba(255, 255, 255, 0.1) 85%,
                transparent 100%
            );
            border-radius: 9999px 9999px 60% 60%;
            pointer-events: none;
            z-index: 0;
        }

        /* Glossy Card Showcase */
        .glossy-card {
            background: linear-gradient(
                135deg,
                rgba(255, 255, 255, 0.72) 0%,
                rgba(255, 255, 255, 0.42) 50%,
                rgba(240, 253, 244, 0.6) 100%
            ) !important;
            backdrop-filter: blur(28px) saturate(190%) !important;
            -webkit-backdrop-filter: blur(28px) saturate(190%) !important;
            border: 1px solid rgba(255, 255, 255, 0.85) !important;
            box-shadow: 
                0 24px 50px -12px rgba(22, 56, 38, 0.15),
                0 8px 24px -4px rgba(0, 0, 0, 0.06),
                inset 0 2px 2px 0 rgba(255, 255, 255, 0.95),
                inset 0 -1px 2px 0 rgba(0, 0, 0, 0.03) !important;
            position: relative;
            overflow: hidden;
        }

        .glossy-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 42%;
            background: linear-gradient(
                to bottom,
                rgba(255, 255, 255, 0.7) 0%,
                rgba(255, 255, 255, 0.08) 80%,
                transparent 100%
            );
            border-radius: inherit;
            pointer-events: none;
            z-index: 1;
        }

        /* Harmonic Section Gradients */
        #hero {
            background-image: 
                linear-gradient(to right, rgba(255, 255, 255, 0.95) 0%, rgba(240, 253, 244, 0.88) 45%, rgba(255, 255, 255, 0.3) 100%),
                radial-gradient(circle at 80% 20%, rgba(255, 242, 0, 0.18) 0%, transparent 40%),
                url('bm400-building.jpg');
            background-color: #f0fdf4;
            background-size: cover;
            background-position: center;
        }

        #about {
            background: linear-gradient(180deg, rgba(238, 246, 227, 0.75) 0%, #f0fdf4 50%, #e6f7ec 100%);
            position: relative;
        }

        #financial {
            background: linear-gradient(180deg, #e6f7ec 0%, #f0fdf4 40%, #e0f2fe 100%);
            position: relative;
        }

        #departments {
            background: linear-gradient(180deg, #e0f2fe 0%, #dcfce7 45%, #f0fdf4 80%, #fef9c3 100%);
            position: relative;
        }

        #activity {
            background: radial-gradient(circle at 50% 15%, rgba(255, 242, 0, 0.22) 0%, transparent 60%),
                        linear-gradient(180deg, #fef9c3 0%, #fef3c7 35%, #ecfdf5 75%, #f0fdf4 100%);
            position: relative;
        }

        #blog {
            background: linear-gradient(180deg, #f0fdf4 0%, #f8fafc 40%, #ecfdf5 100%);
            position: relative;
        }

        #suggestion {
            background: linear-gradient(180deg, #ecfdf5 0%, #fefce8 50%, #f0fdf4 100%);
            position: relative;
        }

        /* Ambient Glow Animations */
        @keyframes floatMesh {
            0%, 100% { transform: translate(0px, 0px) scale(1); }
            50% { transform: translate(25px, -20px) scale(1.08); }
        }
        .animate-mesh-slow {
            animation: floatMesh 14s ease-in-out infinite alternate;
        }

        @keyframes gentleFloat {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-6px); }
        }
        .animate-float {
            animation: gentleFloat 4s ease-in-out infinite;
        }

        /* Cinematic Spring & Mask Reveal Animations (Framer-grade) */
        .motion-fade-up {
            opacity: 0;
            transform: translateY(38px);
            transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .motion-fade-up.in-view {
            opacity: 1;
            transform: translateY(0px);
        }

        .motion-fade-scale {
            opacity: 0;
            transform: scale(0.93) translateY(28px);
            transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .motion-fade-scale.in-view {
            opacity: 1;
            transform: scale(1) translateY(0px);
        }

        .motion-fade-left {
            opacity: 0;
            transform: translateX(-40px);
            transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .motion-fade-left.in-view {
            opacity: 1;
            transform: translateX(0px);
        }

        .motion-fade-right {
            opacity: 0;
            transform: translateX(40px);
            transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .motion-fade-right.in-view {
            opacity: 1;
            transform: translateX(0px);
        }

        /* Cinematic Text Mask Reveal */
        .cinematic-mask-reveal {
            clip-path: inset(0 0 100% 0);
            opacity: 0;
            transform: translateY(40px);
            transition: clip-path 1.1s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1), transform 1.1s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .cinematic-mask-reveal.in-view {
            clip-path: inset(0 0 0 0);
            opacity: 1;
            transform: translateY(0px);
        }

        /* Persistent visibility for Hero Section */
        #hero .in-view,
        #hero h1,
        #hero p,
        #hero .cinematic-mask-reveal.in-view {
            opacity: 1 !important;
            clip-path: inset(0 0 0 0) !important;
            transform: none !important;
        }

        /* Interactive Physics Card Hover */
        .interactive-hover-lift {
            transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .interactive-hover-lift:hover {
            transform: translateY(-8px) scale(1.018);
        }

        /* Modal AnimatePresence Transitions */
        .modal-backdrop-anim {
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .modal-backdrop-anim.is-open {
            opacity: 1;
            pointer-events: auto;
        }
        .modal-dialog-anim {
            transform: scale(0.92) translateY(24px);
            opacity: 0;
            transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
        }
        .modal-backdrop-anim.is-open .modal-dialog-anim {
            transform: scale(1) translateY(0);
            opacity: 1;
        }

        /* Mobile Drawer AnimatePresence */
        #mobile-menu {
            transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1), transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
            transform-origin: top center;
        }
        #mobile-menu.menu-hidden {
            opacity: 0;
            transform: scale(0.95) translateY(-14px);
            pointer-events: none;
        }
        #mobile-menu.menu-visible {
            opacity: 1;
            transform: scale(1) translateY(0);
            pointer-events: auto;
        }

        /* Scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
        }
        ::-webkit-scrollbar-track {
            background: #f1f5f9;
        }
        ::-webkit-scrollbar-thumb {
            background: #30B457;
            border-radius: 4px;
        }

        /* Spotlight Card */
        .spotlight-card {
            position: relative;
            overflow: hidden;
            --spotlight-color: rgba(48, 180, 87, 0.22);
            --spotlight-radius: 320px;
            --spotlight-border-color: rgba(255, 242, 0, 0.45);
        }
        .spotlight-card::before {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(var(--spotlight-radius) circle at var(--mouse-x, -500px) var(--mouse-y, -500px),
                    var(--spotlight-color),
                    transparent 80%);
            opacity: 0;
            transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            pointer-events: none;
            z-index: 10;
        }
        .spotlight-card:hover::before {
            opacity: 1;
        }
        .spotlight-card.spotlight-border-only::before {
            display: none !important;
        }
        .spotlight-border {
            position: relative;
        }
        .spotlight-border::after {
            content: '';
            position: absolute;
            inset: -1px;
            border-radius: inherit;
            background: radial-gradient(calc(var(--spotlight-radius) * 0.85) circle at var(--mouse-x, -500px) var(--mouse-y, -500px),
                    var(--spotlight-border-color),
                    transparent 70%);
            opacity: 0;
            transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            pointer-events: none;
            z-index: 5;
        }
        .spotlight-border:hover::after {
            opacity: 1;
        }

        /* Shimmer Button */
        .btn-shimmer {
            position: relative;
            overflow: hidden;
        }
        .btn-shimmer::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 50%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.28), transparent);
            transition: left 0.7s ease;
            pointer-events: none;
        }
        .btn-shimmer:hover::before {
            left: 150%;
        }

        /* Sliding Tabs */
        .ruixen-sliding-tabs-container {
            position: relative;
            display: inline-flex;
            align-items: center;
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            padding: 4px;
            border-radius: 9999px;
            border: 1px solid rgba(226, 232, 240, 0.9);
            box-shadow: 0 4px 15px -3px rgba(0, 0, 0, 0.05);
        }
        .ruixen-sliding-pill {
            position: absolute;
            top: 4px;
            bottom: 4px;
            left: 0;
            border-radius: 9999px;
            background: linear-gradient(135deg, #1b3d2b 0%, #24523d 50%, #30B457 100%);
            box-shadow: 0 4px 14px -2px rgba(48, 180, 87, 0.45), 0 0 10px rgba(255, 242, 0, 0.2);
            transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), width 0.35s cubic-bezier(0.22, 1, 0.36, 1);
            pointer-events: none;
            z-index: 1;
        }
        .ruixen-sliding-pill::after {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: inherit;
            background: linear-gradient(90deg, rgba(255, 242, 0, 0.25), transparent);
            opacity: 0.8;
            pointer-events: none;
        }
        .ruixen-tab-btn {
            position: relative;
            z-index: 2;
            padding: 8px 18px;
            border-radius: 9999px;
            font-size: 0.775rem;
            font-weight: 600;
            color: #475569;
            transition: color 0.25s ease;
            white-space: nowrap;
            display: inline-flex;
            align-items: center;
            gap: 6px;
        }
        .ruixen-tab-btn.active {
            color: #ffffff;
            font-weight: 700;
        }
        .ruixen-tab-btn:hover:not(.active) {
            color: #1e293b;
        }

        /* Coss Tabs with Count Badge */
        .coss-tabs-list {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 6px;
            padding: 6px;
            background: rgba(255, 255, 255, 0.45);
            backdrop-filter: blur(20px);
            -webkit-backdrop-filter: blur(20px);
            border-radius: 18px;
            border: 1px solid rgba(255, 255, 255, 0.75);
            box-shadow: 0 10px 30px -8px rgba(15, 23, 42, 0.08), inset 0 1px 2px rgba(255, 255, 255, 0.9);
            margin: 0 auto;
            text-align: center;
        }
        .coss-tab-trigger {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            padding: 8px 16px;
            border-radius: 12px;
            font-size: 0.8rem;
            font-weight: 600;
            color: #475569;
            background: transparent;
            border: 1px solid transparent;
            transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
            cursor: pointer;
            user-select: none;
            text-align: center;
        }
        .coss-tab-trigger:hover:not(.active) {
            color: #1e293b;
            background: rgba(255, 255, 255, 0.6);
            border-color: rgba(255, 255, 255, 0.5);
        }
        .coss-tab-trigger.active {
            color: #166534;
            background: rgba(255, 255, 255, 0.92);
            border-color: rgba(74, 222, 128, 0.35);
            box-shadow: 0 4px 14px -2px rgba(48, 180, 87, 0.2), 0 1px 3px rgba(0, 0, 0, 0.04);
        }
        .coss-tab-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 20px;
            height: 20px;
            padding: 0 6px;
            border-radius: 9999px;
            font-size: 0.675rem;
            font-weight: 700;
            line-height: 1;
            transition: all 0.25s ease;
            background: rgba(241, 245, 249, 0.8);
            color: #64748b;
            border: 1px solid rgba(203, 213, 225, 0.6);
        }
        .coss-tab-trigger.active .coss-tab-badge {
            background: #dcfce7;
            color: #15803d;
            border-color: #86efac;
            box-shadow: 0 1px 3px rgba(34, 197, 94, 0.15);
        }

        /* Polaroid Line Carousel */
        .polaroid-carousel-wrapper {
            position: relative;
            width: 100%;
            overflow: hidden;
            padding: 50px 0 30px;
            user-select: none;
        }
        .polaroid-line-svg {
            position: absolute;
            top: 28px;
            left: 0;
            width: 100%;
            height: 48px;
            pointer-events: none;
            z-index: 10;
        }
        .polaroid-track {
            display: flex;
            gap: 28px;
            padding: 20px 48px 40px;
            cursor: grab;
            transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1);
            will-change: transform;
        }
        .polaroid-track.is-dragging {
            cursor: grabbing;
            transition: none;
        }
        .polaroid-card {
            flex-shrink: 0;
            width: 250px;
            background: #ffffff;
            padding: 12px 12px 20px;
            border-radius: 4px;
            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.2), 0 4px 10px -2px rgba(0, 0, 0, 0.1);
            position: relative;
            transform-origin: top center;
            transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.3s ease;
        }
        .polaroid-card:hover {
            box-shadow: 0 20px 35px -5px rgba(0, 0, 0, 0.3), 0 10px 15px -3px rgba(0, 0, 0, 0.15);
            transform: translateY(-8px) scale(1.02) !important;
            z-index: 20;
        }
        .polaroid-peg {
            position: absolute;
            top: -16px;
            left: 50%;
            transform: translateX(-50%);
            width: 12px;
            height: 32px;
            background: linear-gradient(to right, #d4a373 0%, #faedcd 45%, #bc6c25 100%);
            border-radius: 3px;
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.35);
            z-index: 15;
        }
        .polaroid-peg::after {
            content: '';
            position: absolute;
            top: 10px;
            left: -2px;
            right: -2px;
            height: 3px;
            background: #99582a;
            border-radius: 1px;
            box-shadow: inset 0 1px 1px rgba(0,0,0,0.4);
        }
        .polaroid-photo-container {
            width: 100%;
            height: 220px;
            background: #0f172a;
            overflow: hidden;
            border-radius: 2px;
            position: relative;
        }
        .polaroid-photo-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }
        .polaroid-card:hover .polaroid-photo-container img {
            transform: scale(1.06);
        }
        .polaroid-caption {
            margin-top: 14px;
            text-align: center;
            font-family: 'Playfair Display', serif;
        }

        /* Responsive Utility & Device Optimization */
        .table-responsive-wrapper {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: thin;
        }

        /* Responsive Media Queries */
        @media (max-width: 768px) {
            .polaroid-track {
                padding: 16px 20px 30px;
                gap: 20px;
            }
            .polaroid-card {
                width: 220px;
            }
            .polaroid-photo-container {
                height: 190px;
            }
        }

        @media (max-width: 640px) {
            .ruixen-sliding-tabs-container {
                padding: 3px;
                max-width: 100%;
                margin-left: auto;
                margin-right: auto;
                display: inline-flex;
                justify-content: center;
                align-items: center;
                overflow: visible;
            }
            .ruixen-sliding-pill {
                top: 3px;
                bottom: 3px;
                left: 0;
            }
            .ruixen-tab-btn {
                padding: 6px 12px;
                font-size: 0.725rem;
                gap: 4px;
                justify-content: center;
            }
            .coss-tabs-list {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                max-width: 440px;
                gap: 6px;
                padding: 6px;
                margin-left: auto;
                margin-right: auto;
            }
            .coss-tab-trigger {
                justify-content: center;
                flex: 1 1 calc(50% - 8px);
                min-width: 130px;
                text-align: center;
                padding: 7px 10px;
                font-size: 0.725rem;
                gap: 5px;
            }
            .coss-tab-badge {
                font-size: 9px;
                padding: 1px 5px;
            }
            .polaroid-card {
                width: 200px;
                padding: 10px 10px 16px;
            }
            .polaroid-photo-container {
                height: 170px;
            }
        }

        @media (max-width: 380px) {
            .ruixen-tab-btn {
                padding: 5px 8px;
                font-size: 0.68rem;
                gap: 3px;
            }
            .coss-tabs-list {
                gap: 4px;
                padding: 4px;
            }
            .coss-tab-trigger {
                padding: 6px 6px;
                font-size: 0.7rem;
                min-width: 120px;
                gap: 4px;
            }
        }

        /* ======================================================== */
        /* ORGANIZATIONAL STRUCTURE & EPIC TRANSITIONS              */
        /* ======================================================== */

        /* Glowing Tree Hierarchy Connector Lines */
        .tree-line-v {
            width: 2px;
            height: 36px;
            margin: 0 auto;
            background: linear-gradient(180deg, rgba(48, 180, 87, 0.8) 0%, rgba(255, 242, 0, 0.7) 50%, rgba(48, 180, 87, 0.8) 100%);
            position: relative;
            box-shadow: 0 0 10px rgba(48, 180, 87, 0.4);
        }
        .tree-line-v::after {
            content: '';
            position: absolute;
            top: 0;
            left: -2px;
            width: 6px;
            height: 10px;
            background: #FFF200;
            border-radius: 9999px;
            box-shadow: 0 0 8px #FFF200;
            animation: treePulseDown 2.2s cubic-bezier(0.45, 0, 0.55, 1) infinite;
        }

        @keyframes treePulseDown {
            0% { top: 0%; opacity: 0; }
            30% { opacity: 1; }
            80% { opacity: 1; }
            100% { top: 100%; opacity: 0; }
        }

        /* Structure Glass Cards */
        .org-card {
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.65) 100%);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border: 1px solid rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 10px 25px -5px rgba(22, 56, 38, 0.08), 0 4px 10px -2px rgba(0, 0, 0, 0.03);
            transition: all 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            cursor: pointer;
            position: relative;
            overflow: hidden;
        }
        .org-card:hover {
            transform: translateY(-5px) scale(1.02);
            box-shadow: 0 18px 35px -8px rgba(48, 180, 87, 0.22), 0 0 20px rgba(255, 242, 0, 0.15);
            border-color: rgba(48, 180, 87, 0.6);
        }
        .org-card.active-selected {
            border-color: #30B457;
            box-shadow: 0 0 0 2px rgba(48, 180, 87, 0.4), 0 12px 28px -6px rgba(48, 180, 87, 0.25);
        }

        /* Mini Member Chip Card in Grid */
        .org-mini-card {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.9);
            border-radius: 14px;
            padding: 8px 6px;
            text-align: center;
            transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
            cursor: pointer;
        }
        .org-mini-card:hover {
            transform: translateY(-3px) scale(1.04);
            background: #ffffff;
            box-shadow: 0 8px 18px -4px rgba(48, 180, 87, 0.2);
            border-color: rgba(48, 180, 87, 0.5);
        }

        /* Top-to-Bottom Cascading Scroll Trigger Reveal */
        .cascade-reveal-top {
            opacity: 0;
            transform: translateY(-32px);
            transition: opacity 0.75s cubic-bezier(0.16, 1, 0.3, 1), transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .cascade-reveal-top.in-view {
            opacity: 1;
            transform: translateY(0);
        }

        /* ======================================================== */
        /* PINNED SCROLL SLIDE DECK (STICKY PRESENTATION REVEAL)    */
        /* ======================================================== */
        #structure {
            position: relative;
            height: 750vh; /* Lengthened specifically to give full natural scroll room for Member of SRC */
            overflow: visible;
        }

        #structure-sticky-wrapper {
            position: sticky;
            top: 0;
            height: 100vh;
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            overflow: hidden;
            z-index: 20;
        }

        .structure-slide {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            opacity: 0;
            visibility: hidden;
            transform: translateY(40px) scale(0.96);
            filter: blur(4px);
            transition: opacity 0.55s cubic-bezier(0.16, 1, 0.3, 1), transform 0.55s cubic-bezier(0.16, 1, 0.3, 1), filter 0.55s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.55s;
            pointer-events: none;
            will-change: opacity, transform, filter;
            z-index: 10;
        }

        /* Slide 10: Starts top-aligned so 40-card full height scrolls naturally with page scroll */
        #struct-slide-10 {
            justify-content: flex-start !important;
            padding-top: 10px;
            overflow: hidden;
        }

        #member-of-src-container {
            will-change: transform;
            transition: transform 0.08s cubic-bezier(0.2, 0.8, 0.2, 1);
            width: 100%;
        }

        .structure-slide.active {
            opacity: 1;
            visibility: visible;
            transform: translateY(0) scale(1);
            filter: blur(0px);
            pointer-events: auto;
            z-index: 20;
        }

        .structure-slide.passed {
            opacity: 0;
            visibility: hidden;
            transform: translateY(-40px) scale(0.96);
            filter: blur(4px);
            pointer-events: none;
            z-index: 10;
        }

        /* Mouse Scroll Indicator Pulse */
        .mouse-scroll-wheel {
            width: 3px;
            height: 6px;
            background-color: #30B457;
            border-radius: 9999px;
            animation: mouseScrollWheelMove 1.6s ease-in-out infinite;
        }

        @keyframes mouseScrollWheelMove {
            0% { transform: translateY(0); opacity: 1; }
            50% { transform: translateY(5px); opacity: 0.3; }
            100% { transform: translateY(0); opacity: 1; }
        }

        /* Dot Tracker Pulse & Glow */
        .struct-step-dot.active {
            background-color: #30B457;
            transform: scale(1.3);
            box-shadow: 0 0 12px rgba(48, 180, 87, 0.6), 0 0 0 3px rgba(48, 180, 87, 0.2);
        }

        /* ======================================================== */
        /* EXACT FLOWCHART CHART STYLING (FROM USER DIAGRAM)        */
        /* SEAMLESS INTEGRATION WITH WEBSITE BACKGROUND (NO BOXES)  */
        /* ======================================================== */
        .chart-tree-canvas {
            position: relative;
            width: 100%;
            margin: 0 auto;
            background: transparent;
            border: none;
            box-shadow: none;
            padding: 0;
        }

        .chart-outer-box {
            /* Seamless container - zero box enclosure to blend with site background */
            background: transparent !important;
            backdrop-filter: none !important;
            -webkit-backdrop-filter: none !important;
            border: none !important;
            box-shadow: none !important;
            border-radius: 0 !important;
            padding: 0 !important;
            position: relative;
            width: 100%;
            margin: 0 auto;
        }

        .chart-header-pill {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 1.5px solid rgba(226, 232, 240, 0.9);
            background: rgba(255, 255, 255, 0.95);
            color: #0f172a;
            font-weight: 800;
            font-size: 13px;
            padding: 7px 24px;
            border-radius: 9999px;
            box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
            letter-spacing: 0.02em;
            text-align: center;
            margin: 0 auto;
            transition: transform 0.3s ease;
        }

        /* ======================================================== */
        /* MODERN AVATAR PROFILE CARD (MATCHING USER BRIEF)         */
        /* Outer soft translucent bezel + Inner clean card + Badge  */
        /* ======================================================== */
        .chart-card {
            background: rgba(255, 255, 255, 0.78);
            border: 1.5px solid rgba(255, 255, 255, 0.95);
            border-radius: 26px;
            padding: 5px;
            box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.08), 0 3px 8px -2px rgba(15, 23, 42, 0.03);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
            cursor: pointer;
            transition: transform 0.32s cubic-bezier(0.175, 0.885, 0.32, 1.25), box-shadow 0.32s ease, border-color 0.3s ease;
            user-select: none;
            width: 100%;
            display: flex;
            flex-direction: column;
            will-change: transform, opacity;
            position: relative;
        }
        .chart-card:hover {
            transform: translateY(-6px) scale(1.025) !important;
            border-color: rgba(48, 180, 87, 0.45);
            box-shadow: 0 20px 42px -10px rgba(48, 180, 87, 0.22), 0 6px 14px -3px rgba(15, 23, 42, 0.05);
        }

        .chart-card-inner {
            background: #ffffff;
            border-radius: 20px;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            width: 100%;
            height: 100%;
            box-shadow: inset 0 0 0 1px rgba(241, 245, 249, 0.9);
        }

        .chart-card-photo-box {
            width: 100%;
            aspect-ratio: 3 / 3.9;
            overflow: hidden;
            background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
            position: relative;
        }
        .chart-card-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center 20%;
            transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
        }
        .chart-card:hover .chart-card-img {
            transform: scale(1.04);
        }

        .chart-card-body {
            padding: 10px 12px 12px;
            background: #ffffff;
            text-align: left;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .chart-card-name-row {
            display: flex;
            align-items: center;
            gap: 5px;
            width: 100%;
        }

        .chart-card-name-text {
            font-size: 13px;
            font-weight: 700;
            color: #0f172a;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            line-height: 1.25;
            letter-spacing: -0.015em;
        }

        .chart-card-desc-text {
            font-size: 10.5px;
            font-weight: 400;
            color: #64748b;
            line-height: 1.35;
            margin-top: 2.5px;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        /* Per-Member Card Reveal Stagger Animation */
        @keyframes memberCardReveal {
            0% {
                opacity: 0;
                transform: translateY(26px) scale(0.92);
                filter: blur(4px);
            }
            60% {
                filter: blur(0px);
            }
            100% {
                opacity: 1;
                transform: translateY(0) scale(1);
                filter: blur(0px);
            }
        }

        .structure-slide:not(.active) .chart-card {
            opacity: 0;
            transform: translateY(26px) scale(0.92);
            pointer-events: none;
        }

        .structure-slide.active .chart-card {
            animation: memberCardReveal 0.55s cubic-bezier(0.16, 1, 0.3, 1) both;
        }

        .structure-slide.active .chart-header-pill {
            animation: pillRevealAnim 0.45s cubic-bezier(0.16, 1, 0.3, 1) both;
        }

        @keyframes pillRevealAnim {
            0% {
                opacity: 0;
                transform: translateY(-14px) scale(0.96);
            }
            100% {
                opacity: 1;
                transform: translateY(0) scale(1);
            }
        }

        /* Dedicated Tall Portrait Member of SRC Grid Styling (Matching Sarah Swift Brief) */
        .chart-card-member {
            border-radius: 20px !important;
            padding: 4px !important;
            box-shadow: 0 6px 18px -4px rgba(15, 23, 42, 0.07) !important;
            min-width: 0 !important;
            width: 100% !important;
        }
        .chart-card-member .chart-card-inner {
            border-radius: 16px !important;
        }
        .chart-card-member .chart-card-photo-box {
            aspect-ratio: 3 / 3.7 !important;
            min-height: 110px;
            max-height: none !important;
        }
        .chart-card-member .chart-card-body {
            padding: 6px 7px 8px !important;
        }
        .chart-card-member .chart-card-name-text {
            font-size: 10px !important;
            font-weight: 700;
        }
        .chart-card-member .chart-card-desc-text {
            font-size: 8.5px !important;
            line-height: 1.2 !important;
            margin-top: 1.5px !important;
            -webkit-line-clamp: 1;
        }

        .member-grid-full {
            width: 100% !important;
            overflow-x: hidden !important;
            max-width: 100% !important;
        }

        /* Backward compatibility for name pill classes */
        .chart-card-name-pill {
            width: 100%;
            background: #0f172a;
            color: #ffffff;
            border-top: 1.5px dashed rgba(255, 255, 255, 0.35);
            font-size: 9.5px;
            font-weight: 700;
            text-align: center;
            padding: 4px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        /* Interactive Profile Popout Card */
        #member-detail-modal:not(.hidden) {
            animation: modalFadeInBackdrop 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
        }
        @keyframes modalFadeInBackdrop {
            from { opacity: 0; }
            to { opacity: 1; }
        }
        #member-detail-modal .modal-dialog-anim {
            transform: scale(0.92) translateY(20px);
            opacity: 0;
            will-change: transform, opacity;
        }
        #member-detail-modal:not(.hidden) .modal-dialog-anim {
            animation: modalScaleSpring 0.38s cubic-bezier(0.175, 0.885, 0.32, 1.25) forwards;
        }
        @keyframes modalScaleSpring {
            0% { transform: scale(0.9) translateY(24px); opacity: 0; }
            100% { transform: scale(1) translateY(0); opacity: 1; }
        }