
	
        :root {
            --ai-navy:    #003087;
            --ai-blue:    #0057b8;
            --ai-gold:    #c8922a;
            --ai-gold-lt: #e8a830;
            --grad-navy:  linear-gradient(135deg, #003087 0%, #001a57 100%);
            --grad-gold:  linear-gradient(135deg, #e8a830 0%, #c8922a 100%);
        }

        /* ── CAROUSEL WRAPPER ── */
        .hero-carousel {
            position: relative;
            overflow: hidden;
        }

        /* ── EACH SLIDE IMAGE ── */
        .carousel-item {
          height: 60vh;
    min-height: 370px;
    max-height: 600px;
            position: relative;
        }

        .carousel-item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }

        /* ── DARK OVERLAY ── */
        .carousel-item::after {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(
                105deg,
                rgba(8, 15, 30, 0.88) 0%,
                rgba(8, 15, 30, 0.65) 45%,
                rgba(8, 15, 30, 0.20) 100%
            );
            z-index: 1;
        }

        /* ── GRID OVERLAY ── */
        .carousel-item::before {
            content: '';
            position: absolute;
            inset: 0;
            background-image:
                linear-gradient(rgba(0, 87, 184, 0.05) 1px, transparent 1px),
                linear-gradient(90deg, rgba(0, 87, 184, 0.05) 1px, transparent 1px);
            background-size: 50px 50px;
            z-index: 2;
            pointer-events: none;
        }

        /* ── CAPTION CONTENT ── */
        .carousel-caption {
            position: absolute;
            inset: 0;
            z-index: 3;
            display: flex;
            align-items: center;
            text-align: left;
            padding: 0;
            bottom: auto;
            top: 0;
        }

        .caption-inner {
            max-width: 620px;
            padding: 0 15px;
        }

        /* ── BADGE ── */
        .slide-badge {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(0, 87, 184, 0.18);
            border: 1px solid rgba(26, 127, 212, 0.35);
            color: #7ab8f5;
            padding: 7px 17px;
            border-radius: 50px;
            font-size: 0.75rem;
            font-weight: 700;
            letter-spacing: 0.8px;
            text-transform: uppercase;
            margin-bottom: 18px;
        }

        /* ── HEADLINE ── */
        .slide-title {
            font-family: 'Barlow', 'Arial Black', sans-serif;
            font-size: clamp(2rem, 5vw, 3.6rem);
            font-weight: 900;
            color: white;
            line-height: 1.1;
            letter-spacing: -0.4px;
            margin-bottom: 16px;
        }

        .hl-gold {
            background: var(--grad-gold);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        /* ── SUBTITLE ── */
        .slide-subtitle {
            color: rgba(255, 255, 255, 0.65);
            font-size: 1.05rem;
            line-height: 1.72;
            margin-bottom: 28px;
            max-width: 500px;
        }

        /* ── BUTTONS ── */
        .btn-slide-primary {
            background: var(--grad-navy);
            color: white;
            border: none;
            padding: 13px 30px;
            border-radius: 50px;
            font-weight: 700;
            font-size: 0.92rem;
            box-shadow: 0 4px 18px rgba(0, 48, 135, 0.4);
            transition: all 0.3s;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            text-decoration: none;
        }

        .btn-slide-primary:hover {
            color: white;
            transform: translateY(-3px);
            box-shadow: 0 10px 32px rgba(0, 48, 135, 0.55);
        }

        .btn-slide-outline {
            background: transparent;
            color: white;
            border: 2px solid rgba(255, 255, 255, 0.38);
            padding: 13px 30px;
            border-radius: 50px;
            font-weight: 700;
            font-size: 0.92rem;
            transition: all 0.3s;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            text-decoration: none;
        }

        .btn-slide-outline:hover {
            background: rgba(255, 255, 255, 0.1);
            border-color: white;
            color: white;
            transform: translateY(-3px);
        }

        /* ── CUSTOM ARROWS ── */
        .carousel-control-prev,
        .carousel-control-next {
            width: 56px;
            height: 56px;
            background: rgba(255, 255, 255, 0.08);
            border: 2px solid rgba(255, 255, 255, 0.2);
            border-radius: 50%;
            top: 50%;
            transform: translateY(-50%);
            bottom: auto;
            backdrop-filter: blur(8px);
            transition: all 0.3s;
            opacity: 1;
        }

        .carousel-control-prev { left: 24px; }
        .carousel-control-next { right: 24px; }

        .carousel-control-prev:hover,
        .carousel-control-next:hover {
            background: var(--ai-blue);
            border-color: var(--ai-blue);
            box-shadow: 0 8px 24px rgba(0, 87, 184, 0.45);
        }

        .carousel-control-prev-icon,
        .carousel-control-next-icon {
            width: 20px;
            height: 20px;
        }

        /* ── CUSTOM DOTS / INDICATORS ── */
        .carousel-indicators {
            bottom: 90px;
            gap: 8px;
            align-items: center;
            margin: 0;
            justify-content: center;
        }

        .carousel-indicators [data-bs-target] {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            border: 2px solid rgba(255, 255, 255, 0.5);
            background: transparent;
            opacity: 1;
            transition: all 0.3s;
            margin: 0;
        }

        .carousel-indicators [data-bs-target].active {
            background: var(--ai-gold);
            border-color: var(--ai-gold);
            width: 28px;
            border-radius: 5px;
        }

        /* ── PROGRESS BAR ── */
        .carousel-progress {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 3px;
            background: rgba(255, 255, 255, 0.08);
            z-index: 10;
        }

        .carousel-progress-bar {
            height: 100%;
            background: linear-gradient(90deg, var(--ai-blue), var(--ai-gold));
            width: 0%;
            transition: width 0.1s linear;
        }

        /* ── SLIDE COUNTER ── */
        .slide-counter {
            position: absolute;
            bottom: 96px;
            right: 32px;
            z-index: 10;
            color: rgba(255, 255, 255, 0.45);
            font-size: 0.82rem;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 4px;
        }

        .slide-counter .current {
            color: white;
            font-size: 1.1rem;
            font-weight: 900;
        }

        /* ── STATS STRIP ── */
        .stats-strip {
            background: #0d1627;
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            border-bottom: 1px solid rgba(255, 255, 255, 0.05);
        }

        .strip-item {
            padding: 20px 24px;
            text-align: center;
            border-right: 1px solid rgba(255, 255, 255, 0.06);
            transition: background 0.3s;
        }

        .strip-item:hover { background: rgba(0, 87, 184, 0.1); }
        .strip-item:last-child { border-right: none; }

        .strip-num {
            font-family: 'Barlow', sans-serif;
            font-size: 1.85rem;
            font-weight: 900;
            color: white;
            line-height: 1;
        }

        .strip-num span { color: var(--ai-gold); font-size: 1.2rem; }

        .strip-label {
            font-size: 0.72rem;
            color: rgba(255, 255, 255, 0.38);
            text-transform: uppercase;
            letter-spacing: 0.6px;
            margin-top: 5px;
            font-weight: 600;
        }

        /* ── TEXT ANIMATION ── */
        .caption-inner {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.7s ease 0.3s, transform 0.7s ease 0.3s;
        }

        .carousel-item.active .caption-inner {
            opacity: 1;
            transform: translateY(0);
        }

        /* ── RESPONSIVE ── */
        @media (max-width: 767px) {
            .carousel-item {
                height: 100svh;
                min-height: 480px;
            }

            .slide-title { font-size: 2rem; }
            .slide-subtitle { font-size: 0.92rem; }

            .carousel-control-prev { left: 10px; }
            .carousel-control-next { right: 10px; }

            .carousel-control-prev,
            .carousel-control-next {
                width: 42px;
                height: 42px;
            }

            .slide-counter { display: none; }
            .carousel-indicators { bottom: 70px; }
        }
