        .page-hero {
            background: linear-gradient(135deg, #0f172a 0%, #4f46e5 100%);
            color: #fff; padding: 120px 0 60px; text-align: center;
            margin-top: 70px;
        }
        .page-hero h1 { color: #fff !important; font-size: 2.8rem; font-weight: 700; margin-bottom: 10px; }
        .page-hero p { color: rgba(255, 255, 255, .86) !important; max-width: 720px; margin: 8px auto 0; }

        /* Tabs for Special Guests / Speakers */
        .speaker-tabs {
            display: flex; gap: 4px;
            justify-content: center;
            flex-wrap: wrap;
            border-bottom: 1px solid #e5e7eb;
            margin: 30px 0 40px;
        }
        .speaker-tab {
            padding: 12px 28px; border: none; background: none;
            font-weight: 600; color: #6b7280;
            border-bottom: 3px solid transparent;
            cursor: pointer; transition: all .15s;
            display: inline-flex; align-items: center; gap: 8px;
            font-size: 16px;
        }
        .speaker-tab:hover { color: #1f2937; }
        .speaker-tab.active {
            color: #4f46e5;
            border-bottom-color: #4f46e5;
        }
        .speaker-tab .count {
            background: #f3f4f6; padding: 2px 10px;
            border-radius: 999px; font-size: 12px; font-weight: 700;
        }
        .speaker-tab.active .count { background: #eef2ff; color: #4f46e5; }
        .speaker-pane { display: none; }
        .speaker-pane.active { display: block; }

        /* 5 tiles per row on desktop — uniform square cards across both tabs */
        .speaker-pane .speakers-images-div { margin-left: -6px; margin-right: -6px; }
        .speaker-pane .speakers-images-div .gallery-item-div {
            margin-bottom: 14px;
            padding-left: 6px;
            padding-right: 6px;
        }
        @media (min-width: 992px) {
            .speaker-pane .speakers-images-div .gallery-item-div {
                flex: 0 0 20%;
                max-width: 20%;
            }
        }
        .speaker-pane .speakers-images-div .gallery-item {
            position: relative;
            width: 100%;
            aspect-ratio: 1 / 1;
            border-radius: 12px;
            overflow: hidden;
            background: #f1f5f9;
            box-shadow: 0 4px 14px rgba(15, 23, 42, .06);
            transition: transform .2s, box-shadow .2s;
        }
        .speaker-pane .speakers-images-div .gallery-item:hover {
            transform: translateY(-3px);
            box-shadow: 0 10px 26px rgba(15, 23, 42, .12);
        }
        .speaker-pane .speakers-images-div .gallery-item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center top;
            display: block;
            cursor: zoom-in;
        }
