        /* Mobile Menu Styles */
        .mobile-menu-toggle {
            display: none;
            background: none;
            border: none;
            color: #fff;
            font-size: 24px;
            cursor: pointer;
            padding: 5px;
        }
        
        .mobile-nav {
            position: fixed;
            top: 0;
            left: -100%;
            width: 280px;
            height: 100vh;
            background: #000;
            z-index: 9999;
            transition: left 0.3s ease;
            padding-top: 80px;
        }
        
        .mobile-nav.active {
            left: 0;
        }
        
        .mobile-menu-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100vh;
            background: rgba(0,0,0,0.5);
            z-index: 9998;
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
        }
        
        .mobile-menu-overlay.active {
            opacity: 1;
            visibility: visible;
        }
        
        .mobile-menu {
            padding: 20px;
        }
        
        .mobile-menu ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }
        
        .mobile-menu li {
            margin: 20px 0;
        }
        
        .mobile-menu li a {
            color: #fff;
            text-decoration: none;
            font-size: 16px;
            font-weight: 500;
            display: block;
            padding: 12px 0;
            border-bottom: 1px solid #333;
        }
        
        .mobile-menu li.current-menu-item a {
            color: #d4af37;
        }
        
        .mobile-close {
            position: absolute;
            top: 20px;
            right: 20px;
            background: none;
            border: none;
            color: #fff;
            font-size: 24px;
            cursor: pointer;
        }
        
        @media (max-width: 991px) {
            .navigation {
                display: none !important;
            }
            
            .mobile-menu-toggle {
                display: block;
            }
            
            .main-navigation .col-lg-9 {
                flex: none;
                max-width: none;
            }
        }
        .acage-structure {
  position: relative;
  background-size: cover;
  background-position: center;
  color: #fff;
}

.acage-structure .overlay {
  position: absolute;
  inset: 0;
  /* Dark overlay for readability */
}

.acage-structure .structure-card {
  background: white;
  color: #000000;
  border-radius: 12px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.acage-structure .structure-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.3);
}

.acage-structure .structure-icon i {
  color: #f5c518; /* ACAGE gold */
}

   .history-timeline-section {
  
        position: relative;
        padding: 100px 0;
    }

    .timeline-container {
        position: relative;
        max-width: 1200px;
        margin: 0 auto;
        padding: 50px 0;
        display: flex;          /* ✅ enable flexbox */
        flex-wrap: wrap;        /* ✅ allow wrapping */
        gap: 30px;              /* ✅ spacing between items */
        justify-content: center;
    }

    .timeline-line {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        height: 2px;
        background: linear-gradient(90deg, #d4af37 0%, #f4d03f 50%, #d4af37 100%);
        transform: translateY(-50%);
        z-index: 1;
    }

    .timeline-item {
        flex: 1 1 calc(33.333% - 30px);  /* ✅ 3 per row */
        max-width: calc(33.333% - 30px);
        text-align: center;
        z-index: 2;
        color:white;
        min-width: 250px;                /* ✅ prevents shrinking too small */
    }

    .timeline-dot {
        width: 20px;
        height: 20px;
        background: #fff;
        border: 3px solid #d4af37;
        border-radius: 50%;
        margin: 0 auto 20px;
        position: relative;
        z-index: 3;
    }

    .timeline-dot.current-dot {
        width: 25px;
        height: 25px;
        background: #d4af37;
        border: 3px solid #f4d03f;
        animation: pulse 2s infinite;
    }

    @keyframes pulse {
        0%, 100% { transform: scale(1); }
        50% { transform: scale(1.1); }
    }

    .timeline-date {
        color: #fff;
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 10px;
        text-transform: uppercase;
    }

    .current-date {
        color: #d4af37;
        font-weight: 700;
    }

    .timeline-content {
       
        backdrop-filter: blur(10px);
        border-radius: 15px;
        padding: 20px 15px;
        margin-top: 20px;
        transition: all 0.3s ease;
        border: 1px solid rgba(212, 175, 55, 0.2);
    }

    .timeline-item.current .timeline-content {
       
        border: 2px solid #d4af37;
        transform: scale(1.05);
    }

    .timeline-content:hover {
        transform: translateY(-5px);
        background: rgba(255, 255, 255, 0.15);
    }

    .timeline-item.current .timeline-content:hover {
        transform: scale(1.05) translateY(-5px);
    }

    .timeline-title {
        color: #fff;
        font-size: 18px;
        font-weight: 700;
        margin-bottom: 10px;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .current-title {
        color: #d4af37;
        font-size: 20px;
    }

    .timeline-description {
        color: rgba(255, 255, 255, 0.8);
        font-size: 13px;
        line-height: 1.4;
        margin: 0;
    }

    /* Tablet (2 per row) */
    @media (max-width: 991px) {
        .timeline-container {
            padding: 30px 20px;
        }

        .timeline-line {
            display: none;
        }

        .timeline-item {
            flex: 1 1 calc(50% - 30px);
            max-width: calc(50% - 30px);
            text-align: center;
        }
    }

    /* Mobile (1 per row) */
    @media (max-width: 576px) {
        .timeline-item {
            flex: 1 1 100%;
            max-width: 100%;
        }
    }

    /* Small mobile fine-tuning */
    @media (max-width: 768px) {
        .timeline-title {
            font-size: 16px;
        }

        .current-title {
            font-size: 18px;
        }
    }

    /* Clear float (not needed with flex, but safe fallback) */
    .timeline-container::after {
        content: "";
        display: table;
        clear: both;
    }
