     :root { --stats-accent: var(--bs-blue); }
        /* Intro Section - theme aligned and non-overlapping */
        .intro-section {
            position: relative;
            z-index: 1;
            padding: 3.25rem 0 1rem;
            width: 100%;
            overflow: hidden;
        }
        .intro-section .intro-container {
            position: relative;
            border-radius: 18px;
            overflow: hidden;
            box-shadow: 0 10px 40px rgba(0,0,0,0.15);
            isolation: isolate;
            margin-bottom: 10px;
        }
        /* Remove backdrop for stats: no background */
        .intro-section .intro-container::before {
            content: none;
            display: none;
        }
        .intro-section .intro-container img {
            display: block;
            width: 100%;
            height: clamp(240px, 48vw, 520px);
            object-fit: cover;
            filter: saturate(1.05) contrast(1.02);
        }
        /* Corner ornaments - mimic video-wrapper outline */
        .intro-section .intro-corner {
            position: absolute;
            z-index: 1;
            width: 12%;
            aspect-ratio: 1/3;
            transition: blue;
        }
        .intro-section .intro-corner.top-right {
            right: -5px;
            top: -7px;
            background: rgb(33,33,33);
            border-radius: 10px;
        }
        .intro-section .intro-corner.bottom-left {
            left: -5px;
            bottom: -7px;
            background: var(--bs-gold);
            border-radius: 10px;
        }
        /* Stats */
        .intro-section .intro-stats {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
            margin-top: 22px;
            position: relative;
            z-index: 1;
        }
        .intro-section .intro-stats .stat-box {
            position: relative;
            background: transparent;
            border: 1px solid color-mix(in oklab, var(--stats-accent) 40%, transparent);
            backdrop-filter: none;
            border-radius: 18px;
            padding: 16px 14px;
            text-align: center;
            box-shadow: none;
            overflow: hidden;
        }
        .intro-section .intro-stats .stat-icon {
            position: absolute;
            left: 14px;
            top: 14px;
            width: 54px;
            height: 54px;
            border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            background: transparent;
            border: 1px solid color-mix(in oklab, var(--stats-accent) 35%, transparent);
            color: var(--stats-accent);
            box-shadow: none;
        }
        .intro-section .intro-stats .stat-icon i { font-size: 26px; }
        /* Animated accent border */
        .intro-section .intro-stats .stat-box::after {
            content: "";
            position: absolute;
            inset: 0;
            border-radius: 18px;
            padding: 1px;
            background:
                linear-gradient(135deg, color-mix(in oklab, var(--stats-accent) 60%, transparent), rgba(0,0,0,0))
                ,linear-gradient(0deg, rgba(255,255,255,0.04), rgba(255,255,255,0.04));
            -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
                    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            -webkit-mask-composite: xor;
                    mask-composite: exclude;
            animation: none;
        }
        .intro-section .intro-stats .stat-box::before {
            content: "";
            position: absolute;
            left: 10%;
            right: 10%;
            top: 0;
            height: 3px;
            border-radius: 3px;
            background: linear-gradient(90deg, transparent, var(--stats-accent), transparent);
            transform: translateY(-100%);
            opacity: 0;
        }
        .intro-section .intro-stats .stat-box.reveal::before {
            animation: stat-spark 900ms ease 300ms forwards;
        }
        .intro-section .intro-stats h2 {
            margin: 0;
            font-size: clamp(1.6rem, 3.2vw, 2.4rem);
            line-height: 1.1;
            color: var(--stats-accent);
            text-shadow: 0 2px 12px rgba(0,0,0,.25);
        }
        .intro-section .intro-stats p {
            margin: 6px 0 0;
            color: #c9c9c9;
            font-weight: 500;
            letter-spacing: .2px;
        }
        /* Stats container styled like video container */
        .intro-section .stats-wrapper {
            position: relative;
            border-radius: 50px 0 50px 0;
            overflow: hidden;
            padding: 0;
            width: 100%;
            background: transparent;
            backdrop-filter: none;
            z-index: 2;
        }
        /* Corner figures for stats wrapper (same as video-wrapper) */
        .intro-section .stats-wrapper .outline {
            width: 10%;
            aspect-ratio: 1/3;
            position: absolute;
            z-index: 1;
            transition: blue;
        }
        /* Ensure spacing before projects section */
        .projects-section {
            position: relative;
            z-index: 2; /* override theme negative z-index */
            margin-top: .75rem;
            width: min(90vw, 1200px);
            margin-left: auto;
            margin-right: auto;
            height: auto !important;
            overflow: visible;
        }
        /* Responsive tweaks */
        @media (max-width: 991.98px) {
            .intro-section { padding: 2.8rem 0 .75rem; }
            .intro-section .intro-corner { width: 88px; height: 88px; }
            .projects-section { margin-top: .5rem; }
        }
        @media (max-width: 575.98px) {
            /* Intro spacing */
            .intro-section { padding: 1.4rem 0 .35rem; }
            .video-section { margin-bottom: .35rem; }
            /* Stats grid and containment */
            .intro-section .intro-stats {
                grid-template-columns: 1fr 1fr;
                gap: 8px;
                width: 92vw;
                margin-left: auto;
                margin-right: auto;
                padding-left: 0;
                padding-right: 0;
                box-sizing: border-box;
                margin-top: 8px;
            }
            .intro-section .intro-stats .stat-box { padding: 14px 12px 16px; border-radius: 14px; box-shadow: none; }
            .intro-section .intro-stats .stat-box::after { border-radius: 14px; opacity: .6; }
            .intro-section .intro-stats h2 { font-size: clamp(1.3rem, 5.6vw, 1.6rem); }
            .intro-section .intro-stats p { font-size: .95rem; }
            .intro-section .intro-stats .stat-icon { width: 48px; height: 48px; border-radius: 10px; }
            .intro-section .stats-wrapper { padding: 16px 14px; border-radius: 32px 0 32px 0; }
            .intro-section .stats-wrapper .outline { width: 14%; }
            /* Mobile projects fixes */
            .projects-section {
                width: 96vw;
                margin-left: auto;
                margin-right: auto;
                padding-left: 6px;
                padding-right: 6px;
                overflow-x: hidden;
                transform: none !important;
                margin-top: .5rem;
            }
            .projects-section .projects-container-fluid { padding-left: 0; padding-right: 0; }
            .projects-section .accordion { gap: 10px; }
            .projects-section .accordion-header { width: 100%; text-align: left; }
            .projects-section .accordion-body { width: 100%; }
            .projects-section .accordion-content { display: flex; flex-direction: column; gap: 12px; }
            .projects-section .accordion-image-container img { width: 100%; height: auto; object-fit: cover; }
            .news-section { margin-top: 20px; }
        }
        @media (max-width: 360px) {
            .intro-section .intro-stats { grid-template-columns: 1fr; gap: 10px; }
        }

        /* Stats animations */
        @keyframes stat-pop {
            0% { transform: translateY(10px) scale(.98); opacity: 0; }
            60% { transform: translateY(0) scale(1.02); opacity: 1; }
            100% { transform: translateY(0) scale(1); opacity: 1; }
        }
        @keyframes stat-glow {
            0%, 100% { filter: drop-shadow(0 0 0px rgba(0,0,0,0)); }
            50% { filter: drop-shadow(0 0 10px color-mix(in oklab, var(--stats-accent) 45%, transparent)); }
        }
        @keyframes stat-spark {
            0% { transform: translateY(-100%); opacity: 0; }
            60% { transform: translateY(0); opacity: 1; }
            100% { transform: translateY(0); opacity: .85; }
        }
        .intro-section .intro-stats .stat-box { opacity: 0; transform: translateY(6px); }
        .intro-section .intro-stats .stat-box.reveal { animation: stat-pop .6s ease forwards; }
        .intro-section .intro-stats .stat-box.reveal:nth-child(2) { animation-delay: .08s; }
        .intro-section .intro-stats .stat-box.reveal:nth-child(3) { animation-delay: .16s; }

        /* Social Section */
        .social-section {
            position: relative;
            margin-top: 48px;
            padding: 52px 0 64px;
            background: transparent !important;
            -webkit-mask-image: none;
                    mask-image: none;
        }
        /* Stats-as-cards using social card visuals */
        .stats-section .title { color: var(--bs-blue); }
        .stats-section .social-card .icon {
            width: auto; height: auto; border-radius: 0;
            background: transparent; border: none; margin: 0 0 8px;
        }
        .stats-section .number {
            font-size: clamp(2rem, 5vw, 3rem);
            font-weight: 800;
            color: var(--stats-accent);
            line-height: 1;
        }
        .stats-section .label { opacity: .95; }
        .social-section .title {
            text-align: center;
            color: #fff;
            font-size: clamp(1.4rem, 2.6vw, 2.2rem);
            font-weight: 700;
            margin-bottom: 28px;
        }
        .social-section .social-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 28px;
            width: min(1100px, 92vw);
            margin: 0 auto;
        }
        .social-section .social-card {
            background: radial-gradient(180% 140% at 50% 0%, rgba(255,255,255,0.08), rgba(0,0,0,0.18)),var(--bs-blue);
            border: 1px solid rgba(255,255,255,0.1);
            border-radius: 28px;
            padding: 26px 22px;
            text-align: center;
            color: #fff;
            box-shadow: 0 10px 26px rgba(0,0,0,.25);
            transition: transform .2s ease, box-shadow .2s ease;
        }
        .social-section .social-card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(0,0,0,.3); }
        .social-section .icon {
            width: 84px; height: 84px; margin: 6px auto 14px; border-radius: 20px;
            display: grid; place-items: center;
            background: rgba(0,0,0,0.25);
            border: 1px solid rgba(255,255,255,0.12);
        }
        .social-section .icon i { font-size: 44px; }
        .social-section .label { font-size: 1.1rem; font-weight: 600; letter-spacing: .2px; }
        .social-section a { color: inherit; text-decoration: none; display: block; }
        @media (max-width: 991.98px) {
            .social-section { padding: 44px 0 54px; }
            .social-section .social-grid { grid-template-columns: 1fr; gap: 16px; width: 92vw; }
            .social-section .icon { width: 72px; height: 72px; border-radius: 16px; }
            .social-section .icon i { font-size: 36px; }
        }
        .marquee {
    width: 100vw;
    overflow: hidden;
    white-space: nowrap;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 1.2rem;
    padding: 8px 0;
    position: relative;
    z-index: 10;
}

.marquee span {
    display: inline-block;
    padding-right: 2rem;
}
