/* ===== CSS VARIABLES ===== */
:root {
    --brand-blue: #2563eb;
    --brand-blue-dark: #1d4ed8;
    --brand-gradient: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    --accent-bg: rgba(37, 99, 235, 0.08);
    --text-primary: #1f2937;
    --text-secondary: #6b7280;
    --text-light: #9ca3af;
    --bg-primary: #ffffff;
    --bg-secondary: #f9fafb;
    --bg-dark: #111827;
    --border-color: #e5e7eb;
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-xl: 1rem;
    --transition: all 0.3s ease;
    --transition-fast: all 0.15s ease;
}

/* ===== RESET & BASE STYLES ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Inter', sans-serif;
    line-height: 1.6;
    color: var(--text-primary);
    background-color: var(--bg-primary);
    overflow-x: hidden;
}

/* ===== TYPOGRAPHY ===== */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 1rem;
}

h1 { font-size: 3rem; }
h2 { font-size: 2.5rem; }
h3 { font-size: 2rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }

p {
    margin-bottom: 1rem;
    color: var(--text-secondary);
}

/* ===== UTILITY CLASSES ===== */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

.gradient-text {
    background: var(--brand-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.section-header {
    text-align: center;
    margin-bottom: 4rem;
}

.section-title {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.section-subtitle {
    font-size: 1.125rem;
    color: var(--text-secondary);
    max-width: 600px;
    margin: 0 auto;
}

/* ===== BUTTONS ===== */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem 1.5rem;
    border-radius: var(--radius-md);
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition);
    cursor: pointer;
    border: none;
    font-size: 1rem;
    gap: 0.5rem;
}

/* ===== ICON FALLBACKS ===== */
/* Ensure Font Awesome icons always display properly */
.fas, .far, .fab, .fal {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 5 Free", "Font Awesome 5 Pro", "FontAwesome";
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.fas {
    font-weight: 900;
}

.far {
    font-weight: 400;
}

.fab {
    font-weight: 400;
}

/* Custom icons will use Font Awesome directly - no fallback needed */

.programme-icon i.fas.fa-users:before { content: "\f0c0"; }
.programme-icon i.fas.fa-handshake:before { content: "\f2b5"; }
.programme-icon i.fas.fa-chart-bar:before { content: "\f080"; }
.programme-icon i.fas.fa-gavel:before { content: "\f0e3"; }
.programme-icon i.fas.fa-user-plus:before { content: "\f234"; }
.programme-icon i.fas.fa-dollar-sign:before { content: "\f155"; }
.programme-icon i.fas.fa-graduation-cap:before { content: "\f19d"; }
.programme-icon i.fas.fa-crown:before { content: "\f521"; }
.programme-icon i.fas.fa-star:before { content: "\f005"; }
.programme-icon i.fas.fa-trophy:before { content: "\f091"; }
.programme-icon i.fas.fa-medal:before { content: "\f5a2"; }
.programme-icon i.fas.fa-user-tie:before { content: "\f508"; }
.programme-icon i.fas.fa-laptop-code:before { content: "\f5fc"; }
.programme-icon i.fas.fa-chart-line:before { content: "\f201"; }
.programme-icon i.fas.fa-database:before { content: "\f1c0"; }
.programme-icon i.fas.fa-tasks:before { content: "\f0ae"; }
.programme-icon i.fas.fa-project-diagram:before { content: "\f542"; }
.programme-icon i.fas.fa-calendar-check:before { content: "\f274"; }
.programme-icon i.fas.fa-clock:before { content: "\f017"; }
.programme-icon i.fas.fa-check-circle:before { content: "\f058"; }
.programme-icon i.fas.fa-list-check:before { content: "\f0ae"; }
.programme-icon i.fas.fa-user-friends:before { content: "\f500"; }
.programme-icon i.fas.fa-search:before { content: "\f002"; }
.programme-icon i.fas.fa-comments:before { content: "\f086"; }
.programme-icon i.fas.fa-lightbulb:before { content: "\f0eb"; }
.programme-icon i.fas.fa-rocket:before { content: "\f135"; }
.programme-icon i.fas.fa-bullseye:before { content: "\f140"; }
.programme-icon i.fas.fa-shield-alt:before { content: "\f3ed"; }
.programme-icon i.fas.fa-certificate:before { content: "\f0a3"; }
.programme-icon i.fas.fa-camera:before { content: "\f030"; }
.programme-icon i.fas.fa-exclamation-circle:before { content: "\f06a"; }
.programme-icon i.fas.fa-smile:before { content: "\f118"; }
.programme-icon i.fas.fa-grin:before { content: "\f580"; }
.programme-icon i.fas.fa-laugh:before { content: "\f599"; }
.programme-icon i.fas.fa-grin-beam:before { content: "\f582"; }
.programme-icon i.fas.fa-grin-hearts:before { content: "\f584"; }
.programme-icon i.fas.fa-heart:before { content: "\f004"; }
.programme-icon i.fas.fa-fire:before { content: "\f06d"; }
.programme-icon i.fas.fa-lightning-bolt:before { content: "\f0e7"; }
.programme-icon i.fas.fa-magic:before { content: "\f0d0"; }

/* Job icon fallbacks */
.job-icon i.fas.fa-briefcase:before { content: "\f0b1"; }
.job-icon i.fas.fa-user-tie:before { content: "\f508"; }
.job-icon i.fas.fa-chalkboard-teacher:before { content: "\f51c"; }
.job-icon i.fas.fa-users:before { content: "\f0c0"; }
.job-icon i.fas.fa-handshake:before { content: "\f2b5"; }
.job-icon i.fas.fa-palette:before { content: "\f53f"; }
.job-icon i.fas.fa-paint-brush:before { content: "\f1fc"; }
.job-icon i.fas.fa-camera:before { content: "\f030"; }
.job-icon i.fas.fa-video:before { content: "\f03d"; }
.job-icon i.fas.fa-music:before { content: "\f001"; }
.job-icon i.fas.fa-code:before { content: "\f121"; }
.job-icon i.fas.fa-laptop:before { content: "\f109"; }
.job-icon i.fas.fa-mobile-alt:before { content: "\f3cd"; }
.job-icon i.fas.fa-server:before { content: "\f233"; }
.job-icon i.fas.fa-database:before { content: "\f1c0"; }
.job-icon i.fas.fa-chart-line:before { content: "\f201"; }
.job-icon i.fas.fa-chart-bar:before { content: "\f080"; }
.job-icon i.fas.fa-chart-pie:before { content: "\f200"; }
.job-icon i.fas.fa-calculator:before { content: "\f1ec"; }
.job-icon i.fas.fa-flask:before { content: "\f0c3"; }
.job-icon i.fas.fa-microscope:before { content: "\f610"; }
.job-icon i.fas.fa-dna:before { content: "\f471"; }
.job-icon i.fas.fa-heartbeat:before { content: "\f21e"; }
.job-icon i.fas.fa-stethoscope:before { content: "\f0f1"; }
.job-icon i.fas.fa-pills:before { content: "\f484"; }
.job-icon i.fas.fa-hospital:before { content: "\f0f8"; }
.job-icon i.fas.fa-user-md:before { content: "\f0f0"; }
.job-icon i.fas.fa-user-nurse:before { content: "\f82f"; }
.job-icon i.fas.fa-ambulance:before { content: "\f0f9"; }
.job-icon i.fas.fa-balance-scale:before { content: "\f24e"; }
.job-icon i.fas.fa-gavel:before { content: "\f0e3"; }
.job-icon i.fas.fa-book:before { content: "\f02d"; }
.job-icon i.fas.fa-graduation-cap:before { content: "\f19d"; }
.job-icon i.fas.fa-chalkboard:before { content: "\f51b"; }
.job-icon i.fas.fa-university:before { content: "\f19c"; }
.job-icon i.fas.fa-school:before { content: "\f549"; }
.job-icon i.fas.fa-clipboard-list:before { content: "\f46d"; }

/* Remove faint yellow background around specific buttons */
.btn-primary.btn-glow {
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    color: white;
    box-shadow: var(--shadow-md);
    border: 2px solid rgba(255, 255, 255, 0.1);
}

/* Ensure hover effects work properly */
.btn-primary.btn-glow:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.4);
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    color: white;
    border: 2px solid rgba(255, 255, 255, 0.2);
}

.btn-primary {
    background: var(--brand-gradient);
    color: white;
    box-shadow: var(--shadow-md);
}

.btn-primary:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.3);
}

.btn-secondary {
    background: transparent;
    color: var(--brand-blue);
    border: 2px solid var(--brand-blue);
}

.btn-secondary:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 20px 40px rgba(255, 255, 255, 0.2);
}

.btn-outline {
    background: transparent;
    color: var(--brand-blue);
    border: 2px solid var(--brand-blue);
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
}

.btn-outline:hover {
    background: var(--brand-blue);
    color: white;
}

/* ===== NAVIGATION ===== */
.navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.98) 100%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    z-index: 1000;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border-bottom: 1px solid rgba(37, 99, 235, 0.1);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.navbar::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.02) 0%, rgba(118, 75, 162, 0.02) 100%);
    pointer-events: none;
    z-index: -1;
}

.navbar.scrolled {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
    border-bottom: 1px solid rgba(37, 99, 235, 0.15);
    transform: translateY(0);
}

.nav-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
    position: relative;
}

.nav-logo a {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    text-decoration: none;
    color: var(--brand-blue);
    font-weight: 700;
    font-size: 1.75rem;
    position: relative;
    transition: all 0.3s ease;
    padding: 0.5rem;
    border-radius: var(--radius-md);
}

.nav-logo a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    border-radius: var(--radius-md);
    opacity: 0;
    transition: all 0.3s ease;
    z-index: -1;
}

.nav-logo a:hover::before {
    opacity: 1;
}

.nav-logo a:hover {
    transform: translateY(-2px);
    color: var(--brand-blue-dark);
}

.nav-logo .logo-img {
    height: 80px;
    width: auto;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
    margin: -15px 0; /* Negative margin to keep nav bar height the same */
}

.nav-logo a:hover .logo-img {
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(37, 99, 235, 0.2));
}

/* Fallback for when logo image is not available */
.nav-logo i {
    font-size: 2.25rem;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    transition: all 0.3s ease;
}

.nav-logo a:hover i {
    transform: scale(1.1) rotate(5deg);
}

.nav-menu {
    display: flex;
    gap: 0.5rem;
    list-style: none;
    align-items: center;
}

.nav-link {
    text-decoration: none;
    color: var(--text-primary);
    font-weight: 500;
    font-size: 0.95rem;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    padding: 0.75rem 1.25rem;
    border-radius: var(--radius-md);
    background: transparent;
    overflow: hidden;
}

.nav-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    border-radius: var(--radius-md);
    opacity: 0;
    transition: all 0.3s ease;
    z-index: -1;
}

.nav-link:hover::before {
    opacity: 1;
}

.nav-link:hover {
    color: var(--brand-blue);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 50%;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateX(-50%);
    border-radius: 1px;
}

.nav-link:hover::after {
    width: 60%;
}

.nav-link.active {
    color: var(--brand-blue);
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
}

.nav-link.active::after {
    width: 60%;
}

.nav-toggle {
    display: none;
    flex-direction: column;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: var(--radius-md);
    transition: all 0.3s ease;
    background: transparent;
}

.nav-toggle:hover {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
}

.bar {
    width: 28px;
    height: 3px;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    margin: 4px 0;
    border-radius: 2px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform-origin: center;
}

.nav-toggle:hover .bar {
    background: linear-gradient(90deg, #1d4ed8 0%, #6b46c1 100%);
}

.nav-toggle.active .bar:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px);
}

.nav-toggle.active .bar:nth-child(2) {
    opacity: 0;
    transform: scale(0);
}

.nav-toggle.active .bar:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}

/* Navigation animations */
@keyframes navFadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.nav-link {
    animation: navFadeIn 0.6s ease forwards;
}

.nav-link:nth-child(1) { animation-delay: 0.1s; }
.nav-link:nth-child(2) { animation-delay: 0.2s; }
.nav-link:nth-child(3) { animation-delay: 0.3s; }
.nav-link:nth-child(4) { animation-delay: 0.4s; }
.nav-link:nth-child(5) { animation-delay: 0.5s; }
.nav-link:nth-child(6) { animation-delay: 0.6s; }
.nav-link:nth-child(7) { animation-delay: 0.7s; }
.nav-link:nth-child(8) { animation-delay: 0.8s; }
.nav-link:nth-child(9) { animation-delay: 0.9s; }

/* Navigation glow effect */
.navbar::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(37, 99, 235, 0.3) 50%, transparent 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.navbar:hover::after {
    opacity: 1;
}

/* Responsive navigation improvements */
@media (max-width: 768px) {
    .programme {
        padding: 4rem 0;
    }
    
    /* Reduce animation intensity on mobile */
    .programme-particle {
        animation-duration: 12s;
    }
    
    .programme-shape {
        animation-duration: 18s;
    }
    
    .programme-float-element {
        animation-duration: 15s;
    }
    
    .programme-pulse-circle {
        animation-duration: 6s;
    }
    
    .programme-animated-line {
        animation-duration: 12s;
    }
    
    /* Simplify grid pattern on mobile */
    .programme-grid-pattern {
        background-size: 30px 30px;
        animation-duration: 40s;
    }
    
    /* Reduce moving balls on mobile */
    .programme-moving-ball {
        animation-duration: 25s;
    }
    
    /* Slow down rotating squares on mobile */
    .programme-rotating-square {
        animation-duration: 20s;
    }
    
    /* Reduce bouncing intensity on mobile */
    .programme-bouncing-ball {
        animation-duration: 12s;
    }
    
    /* Slow down diamond float on mobile */
    .programme-diamond {
        animation-duration: 18s;
    }
    
    .programme-overview .overview-card {
        padding: 2rem;
    }
    
    .programme-overview .overview-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 1.5rem;
    }
    
    .programme-overview .overview-card h3 {
        font-size: 1.5rem;
    }
    
    .programme-overview .overview-stats {
        gap: 1.5rem;
    }
    
    .programme-overview .overview-stat .stat-number {
        font-size: 2rem;
    }
    
    .programme-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .programme-card {
        padding: 1.5rem;
    }
    
    .programme-header {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    
    .programme-content h3 {
        font-size: 1.25rem;
    }
    
    .programme-description {
        font-size: 0.875rem;
    }
    
    .programme-details {
        gap: 0.5rem;
    }
    
    .detail-item {
        font-size: 0.75rem;
    }
    
    .programme-modules h4 {
        font-size: 1rem;
    }
    
    .module-item {
        font-size: 0.75rem;
    }
    
    .programme-footer {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .programme-footer .btn {
        max-width: none;
    }
    
    .programme-price {
        text-align: center;
        margin-top: 1rem;
    }
    
    .programme-footer {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .programme-card {
        min-height: auto;
        max-width: 100%;
        padding: 1.5rem;
    }
    
    .programme-benefits .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .programme-benefits .benefit-item {
        padding: 1.5rem;
    }
    
    .programme-benefits .benefit-icon {
        width: 50px;
        height: 50px;
        margin-bottom: 1rem;
    }
    
    .programme-benefits .benefit-item h4 {
        font-size: 1.125rem;
    }
    
    .programme-benefits .benefit-item p {
        font-size: 0.75rem;
    }
    
    .programme-cta {
        padding: 2rem;
    }
    
    .cta-content h3 {
        font-size: 1.5rem;
    }
    
    .cta-content p {
        font-size: 1rem;
    }
    
    .cta-buttons {
        flex-direction: column;
        gap: 1rem;
    }
    
    .cta-buttons .btn {
        min-width: auto;
    }
    
    .nav-menu {
        position: fixed;
        top: 80px;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: calc(100vh - 80px);
        background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        flex-direction: column;
        gap: 0;
        padding: 0;
        left: -100%;
        opacity: 0;
        visibility: hidden;
        transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease, visibility 0.4s ease;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
        border-bottom: 1px solid rgba(37, 99, 235, 0.1);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        z-index: 1000;
        box-sizing: border-box;
        display: flex;
    }

    .nav-menu.active {
        left: 0;
        opacity: 1;
        visibility: visible;
    }

    .nav-link {
        width: 100%;
        text-align: center;
        padding: 1rem 2rem;
        border-radius: 0;
        margin: 0;
        font-size: 1.1rem;
        min-height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        border-bottom: 1px solid rgba(37, 99, 235, 0.1);
        flex-shrink: 0;
        color: #333;
        text-decoration: none;
    }
    
    /* Add proper spacing for mobile menu */
    .nav-menu {
        padding-top: 1rem;
        padding-bottom: 2rem;
    }

    .nav-link:hover {
        background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
        transform: translateX(10px);
    }

    .nav-link::after {
        display: none;
    }

    .nav-toggle {
        display: flex;
    }

    .nav-container {
        height: 80px;
    }
}

@media (max-width: 480px) {
    .programme-overview .overview-card {
        padding: 1.5rem;
    }
    
    .programme-overview .overview-icon {
        width: 50px;
        height: 50px;
        margin-bottom: 1rem;
    }
    
    .programme-overview .overview-card h3 {
        font-size: 1.25rem;
    }
    
    .programme-overview .overview-card p {
        font-size: 0.875rem;
    }
    
    .programme-overview .overview-stat {
        padding: 0.75rem;
    }
    
    .programme-overview .overview-stat .stat-number {
        font-size: 1.75rem;
    }
    
    .programme-overview .overview-stat .stat-label {
        font-size: 0.8rem;
        color: #6b7280;
        font-weight: 700;
    }
    
    .programme-card {
        padding: 1rem;
    }
    
    .programme-badge {
        padding: 0.375rem 0.75rem;
        font-size: 0.75rem;
    }
    
    .programme-content h3 {
        font-size: 1.125rem;
    }
    
    .programme-description {
        font-size: 0.75rem;
    }
    
    .programme-details {
        gap: 0.375rem;
    }
    
    .detail-item {
        font-size: 0.625rem;
    }
    
    .detail-item i {
        font-size: 0.875rem;
    }
    
    .programme-modules h4 {
        font-size: 0.875rem;
    }
    
    .module-item {
        font-size: 0.625rem;
    }
    
    .module-item i {
        font-size: 0.875rem;
    }
    
    .programme-footer .btn {
        padding: 0.5rem 1rem;
        font-size: 0.875rem;
    }
    
    .price-label {
        font-size: 0.625rem;
    }
    
    .price-amount {
        font-size: 1rem;
    }
    
    .programme-benefits .benefit-item {
        padding: 1rem;
    }
    
    .programme-benefits .benefit-icon {
        width: 40px;
        height: 40px;
        margin-bottom: 0.75rem;
    }
    
    .programme-benefits .benefit-icon i {
        font-size: 1.25rem;
    }
    
    .programme-benefits .benefit-item h4 {
        font-size: 1rem;
    }
    
    .programme-benefits .benefit-item p {
        font-size: 0.625rem;
    }
    
    .programme-cta {
        padding: 1.5rem;
    }
    
    .cta-content h3 {
        font-size: 1.25rem;
    }
    
    .cta-content p {
        font-size: 0.875rem;
    }
    
    .cta-buttons .btn {
        padding: 0.75rem 1rem;
        font-size: 0.875rem;
    }
    
    .nav-container {
        padding: 0 1rem;
    }

    .nav-logo a {
        font-size: 1.5rem;
    }

    .nav-logo .logo-img {
        height: 64px;
        margin: -12px 0; /* Adjusted negative margin for mobile */
    }

    .nav-logo i {
        font-size: 2rem;
    }

    .nav-link {
        padding: 1.25rem 2rem;
        font-size: 1.2rem;
    }
}

/* ===== HERO SECTION ===== */
.hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background: #0f0f23;
    overflow: hidden;
    padding-top: 100px;
}

/* Modern Background */
.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.hero-gradient-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
    opacity: 0.8;
}

.hero-pattern {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.3) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(255, 119, 198, 0.3) 0%, transparent 50%),
        radial-gradient(circle at 40% 40%, rgba(120, 219, 255, 0.2) 0%, transparent 50%);
    animation: patternFloat 20s ease-in-out infinite;
}

@keyframes patternFloat {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(1deg); }
}

.hero-shapes {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.shape {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    animation: shapeFloat 8s ease-in-out infinite;
}

.shape-1 {
    width: 120px;
    height: 120px;
    top: 10%;
    left: 10%;
    animation-delay: 0s;
}

.shape-2 {
    width: 80px;
    height: 80px;
    top: 60%;
    right: 15%;
    animation-delay: 2s;
}

.shape-3 {
    width: 100px;
    height: 100px;
    bottom: 20%;
    left: 20%;
    animation-delay: 4s;
}

.shape-4 {
    width: 60px;
    height: 60px;
    top: 30%;
    right: 30%;
    animation-delay: 6s;
}

@keyframes shapeFloat {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-30px) scale(1.1);
        opacity: 0.6;
    }
}

/* Hero Content */
.hero-content {
    position: relative;
    z-index: 10;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* Mobile-first improvements for hero content */
@media (max-width: 1024px) {
    .hero-content {
        gap: 3rem;
        padding: 0 1.5rem;
    }
}



/* Left Content */
.hero-left {
    animation: fadeInLeft 1s ease-out;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.5rem;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    color: white;
    font-size: 0.875rem;
    font-weight: 500;
    margin-bottom: 2rem;
    animation: fadeInUp 0.8s ease-out 0.2s both;
}

.badge-icon {
    width: 24px;
    height: 24px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 0.75rem;
    animation: pulse 2s infinite;
}

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

.hero-title {
    font-size: 3.5rem;
    font-weight: 700;
    color: white;
    line-height: 1.1;
    margin-bottom: 1.5rem;
    animation: fadeInUp 0.8s ease-out 0.4s both;
}

.highlight {
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    position: relative;
}

.hero-description {
    font-size: 1.25rem;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.6;
    margin-bottom: 2.5rem;
    animation: fadeInUp 0.8s ease-out 0.6s both;
}

.hero-actions {
    display: flex;
    gap: 1rem;
    margin-bottom: 3rem;
    animation: fadeInUp 0.8s ease-out 0.8s both;
}

.btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    color: white;
    font-weight: 600;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(37, 99, 235, 0.3);
}

.btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(37, 99, 235, 0.4);
}

.btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    background: transparent;
    color: white;
    font-weight: 600;
    text-decoration: none;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50px;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
}

.btn-secondary:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.5);
    transform: translateY(-3px);
}

.hero-stats {
    display: flex;
    gap: 2rem;
    animation: fadeInUp 0.8s ease-out 1s both;
}

.stat-item {
    text-align: center;
}

.stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #ffd700;
    margin-bottom: 0.25rem;
}

.stat-label {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
    font-weight: 500;
}

/* Right Content */
.hero-right {
    animation: fadeInRight 1s ease-out 0.5s both;
}

.hero-visual {
    position: relative;
    height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Feature Card - New Modern Design */
.feature-card {
    position: relative;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 2rem;
    width: 320px;
    height: 220px;
    animation: fadeInUp 0.8s ease-out 1.2s both;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: 10;
}

.feature-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, 
        rgba(255, 215, 0, 0.1) 0%,
        rgba(255, 237, 78, 0.2) 25%,
        rgba(255, 215, 0, 0.1) 50%,
        rgba(255, 237, 78, 0.2) 75%,
        rgba(255, 215, 0, 0.1) 100%);
    border-radius: 20px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: -1;
}

.feature-card::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: radial-gradient(circle, rgba(255, 215, 0, 0.3) 0%, transparent 70%);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: -1;
}

.feature-card:hover {
    transform: translateY(-8px) scale(1.02);
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 215, 0, 0.4);
    box-shadow: 
        0 20px 40px rgba(0, 0, 0, 0.1),
        0 0 0 1px rgba(255, 215, 0, 0.2),
        0 0 30px rgba(255, 215, 0, 0.1);
}

.feature-card:hover::before {
    opacity: 1;
}

.feature-card:hover::after {
    width: 300px;
    height: 300px;
}

.card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
    margin-top: -0.5rem;
}

.card-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 1.5rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.feature-card:hover .card-icon {
    transform: scale(1.1) rotate(5deg);
    background: linear-gradient(45deg, #ffed4e, #ffd700);
    box-shadow: 0 8px 20px rgba(255, 215, 0, 0.3);
}

.card-badge {
    padding: 0.25rem 0.75rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    color: white;
    font-size: 0.75rem;
    font-weight: 500;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.feature-card:hover .card-badge {
    background: rgba(255, 215, 0, 0.3);
    color: #1f2937;
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(255, 215, 0, 0.2);
}

.card-content h3 {
    color: white;
    font-size: 1.5rem;
    margin-bottom: 0.25rem;
    line-height: 1.2;
    margin-top: -0.25rem;
}

.card-content p {
    color: white !important;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
    line-height: 1.4;
    word-wrap: break-word;
    margin-top: -0.25rem;
}

.card-metrics {
    display: flex;
    gap: 1rem;
    margin-top: auto;
}

.metric {
    text-align: center;
}

.metric-value {
    display: block;
    color: #ffd700;
    font-size: 1.25rem;
    font-weight: 700;
}

.metric-label {
    display: block;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.75rem;
}

/* Service Cards */
.service-cards {
    position: absolute;
    display: flex;
    gap: 1rem;
}

.service-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 15px;
    padding: 1.5rem;
    width: 140px;
    height: 120px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: all 0.3s ease;
    overflow: hidden;
}

.service-card:hover {
    transform: translateY(-5px) scale(1.05);
    background: rgba(255, 255, 255, 0.15);
}

.service-1 {
    top: 10%;
    left: -20%;
    animation: fadeInLeft 0.8s ease-out 1.4s both;
}

.service-2 {
    top: 60%;
    right: -20%;
    animation: fadeInRight 0.8s ease-out 1.6s both;
}

.service-3 {
    top: 10%;
    right: -20%;
    animation: fadeInRight 0.8s ease-out 1.8s both;
}

.service-icon {
    width: 40px;
    height: 40px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
}

.hero .service-content h4 {
    color: white;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    line-height: 1.2;
}

.hero .service-content p {
    color: white !important;
    font-size: 0.75rem;
    margin: 0;
    line-height: 1.3;
    word-wrap: break-word;
    font-weight: 500;
}

/* Trust Indicators */
.trust-indicators {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 1.5rem;
    animation: fadeInUp 0.8s ease-out 2s both;
    z-index: 4;
}

.trust-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 25px;
    color: white;
    font-size: 0.875rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.trust-item:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: translateY(-2px);
}

.trust-item i {
    color: #ffd700;
    font-size: 1rem;
}

/* Scroll Indicator */
.scroll-indicator {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    color: rgba(255, 255, 255, 0.8);
    z-index: 10;
    animation: fadeInUp 0.8s ease-out 2.2s both;
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
    padding: 0.5rem;
    border-radius: 25px;
}

.scroll-indicator:hover {
    transform: translateX(-50%) translateY(-2px);
    color: rgba(255, 255, 255, 1);
}

.scroll-indicator:active {
    transform: translateX(-50%) translateY(0px);
}

/* Mobile Scroll Indicator - Below Action Buttons */
.mobile-scroll {
    position: static;
    transform: none;
    margin-top: 2rem;
    color: rgba(255, 255, 255, 0.9);
    animation: fadeInUp 0.8s ease-out 1s both;
}

.mobile-scroll:hover {
    transform: translateY(-2px);
    color: rgba(255, 255, 255, 1);
}

.mobile-scroll:active {
    transform: translateY(0px);
}

.scroll-arrow {
    width: 40px;
    height: 40px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

.scroll-indicator span {
    font-size: 0.875rem;
    font-weight: 500;
}

/* Animations */
@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===== ABOUT SECTION ===== */
.about {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    overflow: hidden;
}

/* Enhanced Background Elements */
.about-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* Company Timeline Elements */
.about-timeline-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.timeline-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.08), rgba(59, 130, 246, 0.08));
    border: 2px solid rgba(37, 99, 235, 0.2);
    animation: timeline-element-float 16s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(37, 99, 235, 0.1);
    transition: all 0.3s ease;
}

.timeline-element:hover {
    transform: scale(1.1);
    box-shadow: 0 8px 25px rgba(37, 99, 235, 0.2);
}

.timeline-element-2010 {
    width: 50px;
    height: 50px;
    top: 12%;
    left: 12%;
    border-radius: 50%;
    animation-delay: 0s;
}

.timeline-element-2020 {
    width: 60px;
    height: 60px;
    top: 28%;
    left: 28%;
    border-radius: 50%;
    animation-delay: 4s;
}

.timeline-element-2021 {
    width: 70px;
    height: 70px;
    top: 45%;
    left: 45%;
    border-radius: 50%;
    animation-delay: 8s;
}

.timeline-element-2022 {
    width: 80px;
    height: 80px;
    top: 62%;
    left: 62%;
    border-radius: 50%;
    animation-delay: 12s;
}

@keyframes timeline-element-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-20px) rotate(10deg);
        opacity: 1;
    }
}

/* Development Progress Shapes */
.about-development-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.development-shape {
    position: absolute;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(5, 150, 105, 0.08));
    border: 2px solid rgba(16, 185, 129, 0.2);
    animation: development-shape-float 18s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.1);
}

.development-shape-growth {
    width: 65px;
    height: 45px;
    top: 18%;
    right: 15%;
    border-radius: 22px;
    animation-delay: 0s;
}

.development-shape-expansion {
    width: 55px;
    height: 55px;
    top: 38%;
    right: 35%;
    transform: rotate(45deg);
    animation-delay: 4s;
}

.development-shape-evolution {
    width: 75px;
    height: 35px;
    bottom: 28%;
    right: 20%;
    border-radius: 17px;
    animation-delay: 8s;
}

.development-shape-achievement {
    width: 60px;
    height: 60px;
    bottom: 12%;
    right: 25%;
    border-radius: 50%;
    animation-delay: 12s;
}

@keyframes development-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-25px) rotate(8deg);
        opacity: 0.8;
    }
}

/* Mission Vision Indicators */
.about-mission-indicators {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.mission-indicator {
    position: absolute;
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.08), rgba(147, 51, 234, 0.08));
    border: 2px solid rgba(168, 85, 247, 0.2);
    animation: mission-indicator-float 20s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(168, 85, 247, 0.1);
}

.mission-indicator-purpose {
    width: 45px;
    height: 45px;
    top: 22%;
    left: 40%;
    border-radius: 50%;
    animation-delay: 0s;
}

.mission-indicator-values {
    width: 55px;
    height: 35px;
    top: 42%;
    left: 20%;
    border-radius: 17px;
    animation-delay: 6s;
}

.mission-indicator-goals {
    width: 50px;
    height: 50px;
    top: 65%;
    left: 30%;
    transform: rotate(45deg);
    animation-delay: 12s;
}

@keyframes mission-indicator-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-18px) rotate(6deg);
        opacity: 0.7;
    }
}

/* Team Expertise Markers */
.about-expertise-markers {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.expertise-marker {
    position: absolute;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.08), rgba(217, 119, 6, 0.08));
    border: 2px solid rgba(245, 158, 11, 0.2);
    animation: expertise-marker-float 14s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.1);
}

.expertise-marker-hr {
    width: 50px;
    height: 50px;
    top: 35%;
    right: 25%;
    border-radius: 50%;
    animation-delay: 0s;
}

.expertise-marker-legal {
    width: 60px;
    height: 40px;
    top: 55%;
    right: 15%;
    border-radius: 20px;
    animation-delay: 3s;
}

.expertise-marker-training {
    width: 45px;
    height: 45px;
    bottom: 20%;
    left: 15%;
    transform: rotate(45deg);
    animation-delay: 6s;
}

.expertise-marker-consulting {
    width: 55px;
    height: 55px;
    bottom: 38%;
    left: 25%;
    border-radius: 50%;
    animation-delay: 9s;
}

@keyframes expertise-marker-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-22px) rotate(12deg);
        opacity: 0.8;
    }
}

/* Company Journey Elements */
.about-journey-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.journey-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08), rgba(220, 38, 38, 0.08));
    border: 2px solid rgba(239, 68, 68, 0.2);
    animation: journey-element-pulse 10s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(239, 68, 68, 0.1);
}

.journey-element-path {
    width: 40px;
    height: 40px;
    top: 32%;
    left: 55%;
    border-radius: 50%;
    animation-delay: 0s;
}

.journey-element-milestone {
    width: 50px;
    height: 50px;
    top: 58%;
    left: 50%;
    border-radius: 50%;
    animation-delay: 3s;
}

.journey-element-progress {
    width: 45px;
    height: 45px;
    bottom: 25%;
    left: 60%;
    transform: rotate(45deg);
    animation-delay: 6s;
}

@keyframes journey-element-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
        box-shadow: 0 4px 15px rgba(239, 68, 68, 0.1);
    }
    50% {
        transform: scale(1.3);
        opacity: 1;
        box-shadow: 0 8px 25px rgba(239, 68, 68, 0.2);
    }
}

.about-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.about-particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.1), rgba(118, 75, 162, 0.1));
    border-radius: 50%;
    animation: float-about-particle 8s ease-in-out infinite;
}

.about-particle-1 {
    width: 60px;
    height: 60px;
    top: 20%;
    left: 10%;
    animation-delay: 0s;
}

.about-particle-2 {
    width: 80px;
    height: 80px;
    top: 60%;
    right: 15%;
    animation-delay: 3s;
}

.about-particle-3 {
    width: 40px;
    height: 40px;
    bottom: 30%;
    left: 20%;
    animation-delay: 6s;
}

@keyframes float-about-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-15px) rotate(180deg);
        opacity: 0.6;
    }
}

.about-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.about-shape {
    position: absolute;
    background: rgba(37, 99, 235, 0.05);
    border: 1px solid rgba(37, 99, 235, 0.1);
    animation: float-about-shape 10s ease-in-out infinite;
}

.about-shape-1 {
    width: 120px;
    height: 120px;
    top: 10%;
    right: 10%;
    border-radius: 50%;
    animation-delay: 0s;
}

.about-shape-2 {
    width: 80px;
    height: 80px;
    bottom: 20%;
    left: 5%;
    transform: rotate(45deg);
    animation-delay: 5s;
}

@keyframes float-about-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.2;
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
        opacity: 0.5;
    }
}

/* Section Badge */
.section-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: linear-gradient(45deg, #a855f7, #c084fc);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 50px;
    margin-bottom: 1rem;
    font-size: 0.875rem;
    font-weight: 600;
    animation: fadeInUp 1s ease-out;
    box-shadow: 0 5px 15px rgba(124, 58, 237, 0.4);
}

.section-badge i {
    animation: pulse 2s infinite;
}

/* Enhanced Section Title */
.section-title {
    font-size: 3rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 1rem;
    animation: fadeInUp 1s ease-out 0.2s both;
}

/* Initiator Section Title - Purple Theme */
.initiator .section-title {
    background: linear-gradient(45deg, #a855f7, #c084fc);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: none;
}

.initiator .section-subtitle {
    color: rgba(255, 255, 255, 0.9);
    text-shadow: 0 1px 2px rgba(124, 58, 237, 0.3);
}

/* Timeline Section */
.about-timeline {
    position: relative;
    max-width: 800px;
    margin: 4rem auto;
    z-index: 2;
    overflow: visible;
}

.about-timeline::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, transparent, #2563eb, transparent);
    transform: translateX(-50%);
}

.timeline-item {
    position: relative;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out both;
    overflow: visible;
}

.timeline-item:nth-child(1) { animation-delay: 0.4s; }
.timeline-item:nth-child(2) { animation-delay: 0.6s; }
.timeline-item:nth-child(3) { animation-delay: 0.8s; }
.timeline-item:nth-child(4) { animation-delay: 1s; }
.timeline-item:nth-child(5) { animation-delay: 1.2s; }
.timeline-item:nth-child(6) { animation-delay: 1.4s; }

.timeline-item:nth-child(odd) .timeline-content {
    margin-left: 0;
    margin-right: 3rem;
    text-align: right;
}

.timeline-item:nth-child(even) .timeline-content {
    margin-left: 3rem;
    margin-right: 0;
    text-align: left;
}

.timeline-marker {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    z-index: 3;
    pointer-events: auto;
}

.marker-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.25rem;
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
    position: relative;
    z-index: 20;
    transition: all 0.3s ease;
}

.marker-icon i {
    display: block;
    opacity: 1;
    visibility: visible;
}

.fallback-icon {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.5rem;
    color: white;
}

/* Ensure icon is always visible */
.marker-icon i {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.timeline-item:hover .marker-icon {
    transform: scale(1.05);
    box-shadow: 0 12px 30px rgba(37, 99, 235, 0.3);
    transition: all 0.3s ease;
}

.marker-line {
    position: absolute;
    top: 60px;
    left: 50%;
    width: 2px;
    height: 40px;
    background: linear-gradient(to bottom, #2563eb, transparent);
    transform: translateX(-50%);
}

.timeline-content {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 16px;
    padding: 2rem;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.timeline-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.1), transparent);
    transition: left 0.5s;
}

.timeline-content:hover::before {
    left: 100%;
}

.timeline-content:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.timeline-year {
    display: inline-block;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    color: #1f2937;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.timeline-content h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: #1f2937;
}

.timeline-content p {
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.timeline-features {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.feature-tag {
    background: rgba(37, 99, 235, 0.1);
    color: #2563eb;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

/* Company Stats */
.company-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 4rem 0;
    z-index: 2;
    position: relative;
}

.stat-card {
    position: relative;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    backdrop-filter: blur(15px);
    border: 2px solid rgba(37, 99, 235, 0.2);
    border-radius: 20px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
}

.stat-card:nth-child(1) { animation-delay: 1s; }
.stat-card:nth-child(2) { animation-delay: 1.2s; }
.stat-card:nth-child(3) { animation-delay: 1.4s; }

.stat-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px rgba(37, 99, 235, 0.2);
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.15) 0%, rgba(118, 75, 162, 0.15) 100%);
}

.stat-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
    animation: rotate-glow 8s linear infinite;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: -1;
    transform: translate(-50%, -50%);
}

.stat-icon-wrapper {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.stat-card:hover .stat-icon-wrapper {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 35px rgba(37, 99, 235, 0.3);
}

.stat-info h3 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2563eb;
    margin-bottom: 0.5rem;
}

.stat-info p {
    color: #374151;
    font-weight: 600;
    margin: 0;
}

/* Mission & Values */
.mission-values {
    margin-top: 4rem;
    z-index: 2;
    position: relative;
}

.mission-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 3rem;
    margin-bottom: 3rem;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.mission-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s;
}

.mission-card:hover::before {
    left: 100%;
}

.card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.card-header i {
    width: 50px;
    height: 50px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 1.25rem;
}

.card-header h3 {
    font-size: 1.75rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0;
}

.mission-card p {
    font-size: 1.125rem;
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 2rem;
}

.mission-features {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.mission-feature {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.mission-feature i {
    color: #10b981;
    font-size: 1.125rem;
}

.mission-feature span {
    color: #374151;
    font-weight: 500;
}

/* Values Grid */
.values-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.value-item {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
}

.value-item:nth-child(1) { animation-delay: 1.8s; }
.value-item:nth-child(2) { animation-delay: 2s; }
.value-item:nth-child(3) { animation-delay: 2.2s; }
.value-item:nth-child(4) { animation-delay: 2.4s; }

.value-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.value-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s;
}

.value-item:hover::before {
    left: 100%;
}

.value-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.value-item:hover .value-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.value-item h4 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.value-item p {
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

/* ===== THE VISIONARY'S JOURNEY - FOUNDER SECTION ===== */
.founder-visionary {
    position: relative;
    padding: 8rem 0;
    background: #1e1b4b;
    overflow: hidden;
    color: #fef3c7;
    min-height: 100vh;
}

/* Founder Section Specific Stat Numbers - Ivory & Purple Theme */
.founder-visionary .stat-number,
.founder-stat-number {
    font-size: 2.8rem !important;
    font-weight: 700 !important;
    color: #fef3c7 !important;
    margin-bottom: 0.5rem !important;
    display: block !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    letter-spacing: -0.02em !important;
    position: relative !important;
    line-height: 1.1 !important;
    overflow: visible !important;
}

.founder-visionary .stat-number::after,
.founder-stat-number::after {
    display: none;
}

.founder-visionary .stat-label,
.founder-stat-label {
    font-size: 1.125rem !important;
    color: #d1d5db !important;
    font-weight: 500 !important;
    letter-spacing: 0.01em !important;
}

/* Enhanced Animated Background */
.founder-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* Animated Gradient Waves */
.founder-gradient-waves {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.founder-wave {
    position: absolute;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, 
        rgba(45, 27, 105, 0.02) 0%, 
        rgba(76, 29, 149, 0.03) 25%, 
        rgba(124, 58, 237, 0.02) 50%, 
        rgba(168, 85, 247, 0.03) 75%, 
        rgba(192, 132, 252, 0.02) 100%);
    border-radius: 50%;
    animation: founder-wave-float 25s ease-in-out infinite;
}

.founder-wave-1 {
    top: -50%;
    left: -50%;
    animation-delay: 0s;
    opacity: 0.05;
}

.founder-wave-2 {
    top: -30%;
    right: -50%;
    animation-delay: 8s;
    background: linear-gradient(45deg, 
        rgba(76, 29, 149, 0.02) 0%, 
        rgba(124, 58, 237, 0.03) 25%, 
        rgba(168, 85, 247, 0.02) 50%, 
        rgba(192, 132, 252, 0.03) 75%, 
        rgba(168, 85, 247, 0.02) 100%);
}

.founder-wave-3 {
    bottom: -40%;
    left: -30%;
    animation-delay: 16s;
    background: linear-gradient(45deg, 
        rgba(124, 58, 237, 0.02) 0%, 
        rgba(168, 85, 247, 0.03) 25%, 
        rgba(192, 132, 252, 0.02) 50%, 
        rgba(255, 255, 240, 0.03) 75%, 
        rgba(192, 132, 252, 0.02) 100%);
}

@keyframes founder-wave-float {
    0%, 100% {
        transform: scale(1) rotate(0deg);
        opacity: 0.2;
    }
    33% {
        transform: scale(1.15) rotate(120deg);
        opacity: 0.4;
    }
    66% {
        transform: scale(1.08) rotate(240deg);
        opacity: 0.3;
    }
}

/* Floating Achievement Shapes */
.founder-achievement-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.achievement-shape {
    position: absolute;
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.08), rgba(30, 27, 75, 0.08));
    border: 2px solid rgba(249, 115, 22, 0.2);
    animation: achievement-shape-float 12s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(249, 115, 22, 0.15);
}

.achievement-shape-1 {
    width: 80px;
    height: 80px;
    top: 20%;
    left: 15%;
    border-radius: 50%;
    animation-delay: 0s;
}

.achievement-shape-2 {
    width: 60px;
    height: 60px;
    top: 60%;
    right: 20%;
    transform: rotate(45deg);
    animation-delay: 3s;
}

.achievement-shape-3 {
    width: 100px;
    height: 100px;
    bottom: 30%;
    left: 25%;
    border-radius: 20px;
    animation-delay: 6s;
}

.achievement-shape-4 {
    width: 70px;
    height: 70px;
    top: 40%;
    right: 35%;
    border-radius: 50%;
    animation-delay: 9s;
}

@keyframes achievement-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-20px) rotate(10deg);
        opacity: 1;
    }
}

/* Dynamic Timeline Elements */
.founder-timeline-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.timeline-dot {
    position: absolute;
    width: 12px;
    height: 12px;
    background: linear-gradient(135deg, #1e1b4b, #f97316);
    border-radius: 50%;
    animation: timeline-dot-pulse 4s ease-in-out infinite;
    box-shadow: 0 0 15px rgba(249, 115, 22, 0.6);
}

.timeline-dot-1 {
    top: 25%;
    left: 30%;
    animation-delay: 0s;
}

.timeline-dot-2 {
    top: 55%;
    right: 25%;
    animation-delay: 1.5s;
}

.timeline-dot-3 {
    bottom: 35%;
    left: 40%;
    animation-delay: 3s;
}

@keyframes timeline-dot-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.7;
        box-shadow: 0 0 15px rgba(124, 58, 237, 0.6);
    }
    50% {
        transform: scale(1.5);
        opacity: 1;
        box-shadow: 0 0 25px rgba(124, 58, 237, 0.8);
    }
}

.timeline-line {
    position: absolute;
    background: linear-gradient(90deg, transparent, rgba(168, 85, 247, 0.4), transparent);
    animation: timeline-line-flow 6s ease-in-out infinite;
}

.timeline-line-1 {
    width: 150px;
    height: 2px;
    top: 30%;
    left: 20%;
    transform: rotate(45deg);
    animation-delay: 0s;
}

.timeline-line-2 {
    width: 120px;
    height: 2px;
    bottom: 40%;
    right: 30%;
    transform: rotate(-30deg);
    animation-delay: 3s;
}

@keyframes timeline-line-flow {
    0%, 100% {
        opacity: 0.3;
        transform: scaleX(0.8);
    }
    50% {
        opacity: 0.8;
        transform: scaleX(1.2);
    }
}

/* Success Flow Elements */
.founder-success-flow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.success-flow-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(30, 27, 75, 0.1), rgba(249, 115, 22, 0.1));
    border: 1px solid rgba(249, 115, 22, 0.3);
    animation: success-flow-float 15s ease-in-out infinite;
}

.success-flow-1 {
    width: 40px;
    height: 40px;
    top: 35%;
    left: 45%;
    border-radius: 50%;
    animation-delay: 0s;
}

.success-flow-2 {
    width: 60px;
    height: 30px;
    top: 70%;
    right: 40%;
    border-radius: 15px;
    animation-delay: 5s;
}

.success-flow-3 {
    width: 50px;
    height: 50px;
    bottom: 25%;
    left: 35%;
    transform: rotate(45deg);
    animation-delay: 10s;
}

@keyframes success-flow-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-15px) rotate(5deg);
        opacity: 0.8;
    }
}

.floating-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(15, 23, 42, 0.4), rgba(30, 27, 75, 0.4), rgba(249, 115, 22, 0.4));
    border-radius: 50%;
    animation: float-particle 15s ease-in-out infinite;
    box-shadow: 0 0 20px rgba(249, 115, 22, 0.3);
}

.particle-1 {
    width: 80px;
    height: 80px;
    top: 10%;
    left: 10%;
    animation-delay: 0s;
}

.particle-2 {
    width: 60px;
    height: 60px;
    top: 70%;
    right: 15%;
    animation-delay: 3s;
}

.particle-3 {
    width: 100px;
    height: 100px;
    bottom: 20%;
    left: 20%;
    animation-delay: 6s;
}

.particle-4 {
    width: 40px;
    height: 40px;
    top: 40%;
    right: 30%;
    animation-delay: 9s;
}

.particle-5 {
    width: 70px;
    height: 70px;
    bottom: 60%;
    right: 5%;
    animation-delay: 12s;
}

@keyframes float-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg) scale(1);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-40px) rotate(180deg) scale(1.1);
        opacity: 0.8;
    }
}

.geometric-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.shape {
    position: absolute;
    background: rgba(124, 58, 237, 0.15);
    border: 2px solid rgba(168, 85, 247, 0.4);
    animation: float-shape 20s ease-in-out infinite;
    box-shadow: 0 0 15px rgba(124, 58, 237, 0.2);
}

.shape-1 {
    width: 150px;
    height: 150px;
    top: 5%;
    right: 10%;
    border-radius: 50%;
    animation-delay: 0s;
}

.shape-2 {
    width: 120px;
    height: 120px;
    bottom: 10%;
    left: 15%;
    transform: rotate(45deg);
    animation-delay: 7s;
}

.shape-3 {
    width: 100px;
    height: 100px;
    top: 60%;
    right: 25%;
    border-radius: 20px;
    animation-delay: 14s;
}

@keyframes float-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg) scale(1);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-50px) rotate(180deg) scale(1.05);
        opacity: 0.7;
    }
}

/* Founder Header */
.founder-header {
    text-align: center;
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.header-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(139, 92, 246, 0.15);
    border: 1px solid rgba(139, 92, 246, 0.3);
    border-radius: 50px;
    padding: 0.75rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fef3c7;
    margin-bottom: 1.5rem;
    animation: fadeInUp 1s ease-out 0.2s both;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.header-badge i {
    color: #a78bfa;
    font-size: 1rem;
}

/* Accessible focus states inside founder section */
.founder-visionary a:focus,
.founder-visionary button:focus,
.founder-visionary [tabindex]:focus {
    outline: 3px solid #fbbf24;
    outline-offset: 3px;
    border-radius: 8px;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
    .founder-visionary *,
    .founder-visionary *::before,
    .founder-visionary *::after {
        animation: none !important;
        transition: none !important;
    }
    .founder-visionary .particle,
    .founder-visionary .shape {
        transform: none !important;
    }
}

.founder-title {
    font-size: 3.5rem;
    font-weight: 800;
    margin-bottom: 1rem;
    animation: fadeInUp 1s ease-out 0.4s both;
}

.title-line {
    display: block;
    color: #d1d5db;
    margin-bottom: 0.5rem;
}

.title-highlight {
    color: #fef3c7;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.founder-subtitle {
    font-size: 1.25rem;
    color: #d1d5db;
    max-width: 600px;
    margin: 0 auto;
    animation: fadeInUp 1s ease-out 0.6s both;
}

/* Founder Hero Layout */
.founder-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    margin-bottom: 6rem;
    z-index: 2;
    position: relative;
}

/* Founder Profile Section */
.founder-profile-section {
    animation: fadeInLeft 1s ease-out 0.8s both;
}

.profile-card {
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.1) 0%, rgba(168, 85, 247, 0.1) 50%, rgba(236, 72, 153, 0.1) 100%);
    backdrop-filter: blur(30px);
    border: 1px solid rgba(168, 85, 247, 0.3);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(124, 58, 237, 0.3), 0 0 100px rgba(124, 58, 237, 0.1);
    transition: all 0.3s ease;
}

.profile-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 35px 70px rgba(124, 58, 237, 0.4), 0 0 120px rgba(124, 58, 237, 0.2);
}

.profile-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(124, 58, 237, 0.3), rgba(168, 85, 247, 0.3), transparent);
    transition: left 0.5s;
}

.profile-card:hover::before {
    left: 100%;
}

.profile-image-container {
    text-align: center;
    margin-bottom: 2rem;
}

.image-frame {
    position: relative;
    display: inline-block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(124, 58, 237, 0.3), 0 0 60px rgba(168, 85, 247, 0.15);
    transition: all 0.3s ease;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.1), rgba(168, 85, 247, 0.1));
}

.image-frame:hover {
    transform: scale(1.02);
    box-shadow: 0 25px 50px rgba(124, 58, 237, 0.4), 0 0 80px rgba(168, 85, 247, 0.2);
}

.founder-image {
    width: 200px;
    height: 280px;
    object-fit: cover;
    border-radius: 20px;
    transition: all 0.3s ease;
}

.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.1), rgba(168, 85, 247, 0.1));
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.image-frame:hover .image-overlay {
    opacity: 0.3;
}

.founder-badge {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    background: rgba(139, 92, 246, 0.2);
    backdrop-filter: blur(10px);
    color: #fef3c7;
    padding: 0.5rem 1rem;
    border-radius: 16px;
    font-size: 0.75rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(139, 92, 246, 0.3);
    z-index: 10;
}

.profile-details {
    text-align: center;
}

.founder-name {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: #fef3c7;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.founder-role {
    font-size: 1.125rem;
    color: #a1a1aa;
    margin-bottom: 2rem;
}

/* Animated Stats */
.founder-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.founder-stats .stat-item {
    text-align: center;
    padding: 1.5rem 1rem;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    transition: all 0.3s ease;
    box-shadow: none !important;
    overflow: visible !important;
    min-height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.founder-stats .stat-item:hover {
    transform: translateY(-3px);
    background: none !important;
    border: none !important;
    box-shadow: none !important;
}

.founder-stats .stat-item:hover .stat-glow {
    opacity: 1;
    animation: founder-stat-glow 2s ease-in-out infinite;
}

@keyframes founder-stat-glow {
    0%, 100% {
        opacity: 0.3;
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
    }
    50% {
        opacity: 0.6;
        transform: translate(-50%, -50%) scale(1.1) rotate(180deg);
    }
}

.stat-number {
    font-size: 2.5rem;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.5rem;
    display: block;
    letter-spacing: -0.02em;
}



.stat-label {
    font-size: 1rem;
    color: #6b7280;
    font-weight: 600;
    letter-spacing: 0.01em;
}

/* Achievement Cards Section */
.achievements-section {
    animation: fadeInRight 1s ease-out 1s both;
}

.achievement-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    height: 100%;
}

.achievement-card {
    background: rgba(139, 92, 246, 0.08);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(139, 92, 246, 0.2);
    border-radius: 20px;
    padding: 2rem;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.1);
}

.achievement-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(139, 92, 246, 0.15);
}

.achievement-card.card-1 { animation-delay: 1.2s; }
.achievement-card.card-2 { animation-delay: 1.4s; }
.achievement-card.card-3 { animation-delay: 1.6s; }
.achievement-card.card-4 { animation-delay: 1.8s; }

.card-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.05), rgba(16, 185, 129, 0.05));
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.achievement-card:hover .card-glow {
    opacity: 1;
}

.card-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #fef3c7, #fde68a);
    border: 2px solid rgba(254, 243, 199, 0.3);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(254, 243, 199, 0.2);
    position: relative;
    overflow: hidden;
}

.card-icon i {
    font-size: 1.5rem;
    color: #8b5cf6;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.achievement-card:hover .card-icon {
    transform: scale(1.05);
    box-shadow: 0 6px 20px rgba(254, 243, 199, 0.3);
    background: linear-gradient(135deg, #fde68a, #fbbf24);
}

.card-content h4 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #fef3c7;
    margin-bottom: 0.75rem;
}

.card-content p {
    font-size: 0.875rem;
    color: #d1d5db;
    line-height: 1.6;
}

/* Founder Story Section */
.founder-story-section {
    margin-bottom: 6rem;
    z-index: 2;
    position: relative;
    animation: fadeInUp 1s ease-out 2s both;
}

/* Founder Certification Badges */
.founder-certifications {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 2rem;
    margin-top: 3rem;
    flex-wrap: nowrap;
}

.certification-badge {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.45));
    backdrop-filter: blur(10px);
    border: 4px solid rgba(255, 255, 255, 0.9);
    border-radius: 12px;
    padding: 1rem;
    transition: all 0.3s ease;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5), 0 0 40px rgba(255, 255, 255, 0.5), inset 0 2px 0 rgba(255, 255, 255, 0.4);
}

.certification-badge:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.6), 0 0 50px rgba(255, 255, 255, 0.7), inset 0 2px 0 rgba(255, 255, 255, 0.6);
    border-color: rgba(255, 255, 255, 1);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.6));
}

.certification-logo-small {
    width: 90px;
    height: 90px;
    object-fit: contain;
    border-radius: 10px;
    transition: all 0.3s ease;
    filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.7)) brightness(1.4) contrast(1.5) saturate(1.2);
}

/* Enlarged certification logos for PowerUp Mentor and Accredited Trainer */
.certification-logo-large {
    width: 90px;
    height: 90px;
    object-fit: contain;
    border-radius: 10px;
    transition: all 0.3s ease;
    filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.7)) brightness(1.4) contrast(1.5) saturate(1.2);
    transform: scale(1.33);
}

.certification-badge:hover .certification-logo-small {
    transform: scale(1.1);
    filter: drop-shadow(0 6px 15px rgba(0, 0, 0, 0.8)) brightness(1.6) contrast(1.7) saturate(1.3);
}

.certification-badge:hover .certification-logo-large {
    transform: scale(1.46);
    filter: drop-shadow(0 6px 15px rgba(0, 0, 0, 0.8)) brightness(1.6) contrast(1.7) saturate(1.3);
}

/* All certification logos now use the same larger size */

/* Placeholder logo styles removed - now using actual certification logos */

.story-container {
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.18) 0%, rgba(168, 85, 247, 0.16) 50%, rgba(236, 72, 153, 0.12) 100%);
    backdrop-filter: blur(30px);
    border: 1px solid rgba(168, 85, 247, 0.35);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(124, 58, 237, 0.35), 0 0 100px rgba(124, 58, 237, 0.15);
    transition: all 0.3s ease;
}

.story-container::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(500px at 70% 20%, rgba(124, 58, 237, 0.10), rgba(168, 85, 247, 0.08) 35%, transparent 70%);
    z-index: 1;
}

.story-container:hover {
    transform: translateY(-5px);
    box-shadow: 0 35px 70px rgba(124, 58, 237, 0.4), 0 0 120px rgba(124, 58, 237, 0.2);
}

.story-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.quote-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #fbbf24, #f59e0b, #f97316);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(251, 191, 36, 0.3);
}

/* Hide decorative quote icon in founder story header */
.founder-story-section .quote-icon { 
    display: none !important; 
}

.quote-icon i {
    font-size: 1.25rem;
    color: white;
}

.story-header h3 {
    font-size: 2rem;
    font-weight: 700;
    color: #e0e7ff;
    margin: 0;
}

.story-actions {
    margin-left: auto;
    display: flex;
    gap: 0.75rem;
}

.watch-video.btn.btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    background: transparent;
    color: #f3e8ff;
    border: 2px solid rgba(168, 85, 247, 0.6);
    border-radius: 12px;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(124, 58, 237, 0.2);
}

.watch-video.btn.btn-outline:hover {
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.9), rgba(168, 85, 247, 0.9));
    color: white;
    border-color: rgba(168, 85, 247, 0.8);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(124, 58, 237, 0.4), 0 0 20px rgba(236, 72, 153, 0.2);
}

.story-progress {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 4px;
    background: rgba(255, 255, 255, 0.08);
    border-bottom-left-radius: 24px;
    border-bottom-right-radius: 24px;
    overflow: hidden;
}

.story-progress-bar {
    width: 0%;
    height: 100%;
    background: linear-gradient(90deg, #7c3aed, #a855f7, #ec4899);
    transition: width 0.2s ease;
}

/* Video lightbox */
.video-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    padding: 2rem;
}

.video-frame {
    width: min(100%, 960px);
    aspect-ratio: 16 / 9;
    border: none;
    border-radius: 16px;
    box-shadow: 0 25px 50px rgba(0,0,0,0.4);
}

.video-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: rgba(255,255,255,0.15);
    color: white;
    border: none;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    cursor: pointer;
}

.story-content {
    display: grid;
    gap: 1.5rem;
}

.story-paragraph {
    font-size: 1.125rem;
    color: #f5f7ff;
    line-height: 1.9;
    text-align: justify;
}

/* Force higher contrast for story text within founder section */
.founder-story-section .story-container .story-content,
.founder-story-section .story-container .story-paragraph,
.founder-story-section .story-container .story-paragraph p {
    color: #f5f7ff !important;
}

.story-paragraph p {
    margin: 0;
}

/* Founder Story */
.founder-story {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.story-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.6s both;
    box-shadow: 0 25px 50px rgba(124, 58, 237, 0.2);
}

.story-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(168, 85, 247, 0.2), transparent);
    transition: left 0.5s;
}

.story-card:hover::before {
    left: 100%;
}

.story-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.story-header i {
    width: 50px;
    height: 50px;
    background: linear-gradient(45deg, #a855f7, #c084fc);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.25rem;
}

.story-header h3 {
    font-size: 1.75rem;
    font-weight: 700;
    background: linear-gradient(135deg, #f3e8ff, #e0e7ff, #c7d2fe);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0;
    text-shadow: 0 0 20px rgba(243, 232, 255, 0.3);
}

.story-content {
    color: rgba(255, 255, 255, 0.9);
}

.story-paragraph {
    font-size: 1.125rem;
    line-height: 1.7;
    margin-bottom: 1.5rem;
    color: rgba(255, 255, 255, 0.9);
}

/* Expertise Section */
.expertise-section {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.expertise-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 0.8s both;
}

.expertise-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: white;
    margin-bottom: 1rem;
}

.expertise-header p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 1.125rem;
}

.expertise-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.expertise-card {
    background: rgba(139, 92, 246, 0.08);
    backdrop-filter: blur(25px);
    border: 1px solid rgba(139, 92, 246, 0.2);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.1);
}

.expertise-card:nth-child(5) { animation-delay: 1.4s; }
.expertise-card:nth-child(6) { animation-delay: 1.5s; }

.expertise-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(139, 92, 246, 0.15);
    background: rgba(139, 92, 246, 0.12);
}

.expertise-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(168, 85, 247, 0.2) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.expertise-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #8b5cf6, #a78bfa);
    border: 2px solid rgba(139, 92, 246, 0.3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: #fef3c7;
    font-size: 1.75rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.2);
    position: relative;
}

.expertise-card:hover .expertise-icon {
    transform: scale(1.05);
    box-shadow: 0 6px 20px rgba(139, 92, 246, 0.3);
    background: linear-gradient(135deg, #a78bfa, #c4b5fd);
}

.expertise-card h4 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #fef3c7;
    margin-bottom: 1rem;
}

.expertise-card p {
    color: #d1d5db;
    line-height: 1.6;
    margin: 0;
}

/* Achievements Section */
.achievements-section {
    z-index: 2;
    position: relative;
}

.achievements-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.achievements-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: white;
    margin-bottom: 1rem;
}

.achievements-header p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 1.125rem;
}

.achievements-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.achievement-item {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 16px;
    padding: 2rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
    box-shadow: 0 15px 35px rgba(83, 52, 131, 0.2), 0 0 50px rgba(83, 52, 131, 0.05);
}

.achievement-item:nth-child(1) { animation-delay: 1.7s; }
.achievement-item:nth-child(2) { animation-delay: 1.8s; }
.achievement-item:nth-child(3) { animation-delay: 1.9s; }
.achievement-item:nth-child(4) { animation-delay: 2s; }

.achievement-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(124, 58, 237, 0.4);
    background: rgba(168, 85, 247, 0.1);
}

.achievement-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(168, 85, 247, 0.2), transparent);
    transition: left 0.5s;
}

.achievement-item:hover::before {
    left: 100%;
}

.achievement-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #e94560, #f39c12, #f1c40f);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
    box-shadow: 0 8px 20px rgba(233, 69, 96, 0.3);
}

.achievement-item:hover .achievement-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(168, 85, 247, 0.4);
}

.achievement-content h4 {
    font-size: 1.125rem;
    font-weight: 600;
    color: white;
    margin-bottom: 0.5rem;
}

.achievement-content p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.875rem;
    line-height: 1.5;
    margin: 0;
}

/* ===== SERVICES SECTION ===== */
.services {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 50%, #f0fdf4 100%);
    overflow: hidden;
}

/* Enhanced Background Elements */
.services-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    overflow: hidden;
}

/* Service Category Elements */
.services-category-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.category-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.15), rgba(59, 130, 246, 0.12));
    border: 2px solid rgba(37, 99, 235, 0.3);
    animation: category-element-float 16s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(37, 99, 235, 0.2);
    transition: all 0.3s ease;
}

.category-element:hover {
    transform: scale(1.1);
    box-shadow: 0 8px 25px rgba(37, 99, 235, 0.2);
}

.category-element-hr {
    width: 55px;
    height: 55px;
    top: 18%;
    left: 15%;
    border-radius: 50%;
    animation-delay: 0s;
}

.category-element-legal {
    width: 65px;
    height: 45px;
    top: 32%;
    left: 22%;
    border-radius: 22px;
    animation-delay: 4s;
}

.category-element-training {
    width: 50px;
    height: 50px;
    top: 48%;
    left: 18%;
    transform: rotate(45deg);
    animation-delay: 8s;
}

.category-element-consulting {
    width: 60px;
    height: 60px;
    top: 68%;
    left: 25%;
    border-radius: 50%;
    animation-delay: 12s;
}

@keyframes category-element-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-20px) rotate(10deg);
        opacity: 1;
    }
}

/* Solution Flow Indicators */
.services-solution-flow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.solution-flow {
    position: absolute;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(5, 150, 105, 0.08));
    border: 2px solid rgba(16, 185, 129, 0.2);
    animation: solution-flow-float 18s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.1);
}

.solution-flow-1 {
    width: 70px;
    height: 35px;
    top: 22%;
    right: 18%;
    border-radius: 17px;
    animation-delay: 0s;
}

.solution-flow-2 {
    width: 55px;
    height: 55px;
    top: 38%;
    right: 32%;
    border-radius: 50%;
    animation-delay: 4s;
}

.solution-flow-3 {
    width: 65px;
    height: 45px;
    bottom: 28%;
    right: 18%;
    border-radius: 22px;
    animation-delay: 8s;
}

.solution-flow-4 {
    width: 50px;
    height: 50px;
    bottom: 12%;
    right: 25%;
    transform: rotate(45deg);
    animation-delay: 12s;
}

@keyframes solution-flow-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-25px) rotate(8deg);
        opacity: 0.8;
    }
}

/* Expertise Showcase Shapes */
.services-expertise-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.expertise-shape {
    position: absolute;
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.08), rgba(147, 51, 234, 0.08));
    border: 2px solid rgba(168, 85, 247, 0.2);
    animation: expertise-shape-float 20s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(168, 85, 247, 0.1);
}

.expertise-shape-strategy {
    width: 45px;
    height: 45px;
    top: 28%;
    left: 42%;
    border-radius: 50%;
    animation-delay: 0s;
}

.expertise-shape-compliance {
    width: 55px;
    height: 35px;
    top: 42%;
    left: 52%;
    border-radius: 17px;
    animation-delay: 5s;
}

.expertise-shape-development {
    width: 50px;
    height: 50px;
    top: 58%;
    left: 38%;
    transform: rotate(45deg);
    animation-delay: 10s;
}

.expertise-shape-optimization {
    width: 60px;
    height: 40px;
    bottom: 22%;
    left: 48%;
    border-radius: 20px;
    animation-delay: 15s;
}

@keyframes expertise-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-18px) rotate(6deg);
        opacity: 0.7;
    }
}

/* Value Proposition Markers */
.services-value-markers {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.value-marker {
    position: absolute;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.08), rgba(217, 119, 6, 0.08));
    border: 2px solid rgba(245, 158, 11, 0.2);
    animation: value-marker-float 14s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.1);
}

.value-marker-efficiency {
    width: 50px;
    height: 50px;
    top: 35%;
    right: 42%;
    border-radius: 50%;
    animation-delay: 0s;
}

.value-marker-quality {
    width: 60px;
    height: 40px;
    top: 48%;
    right: 28%;
    border-radius: 20px;
    animation-delay: 3s;
}

.value-marker-innovation {
    width: 45px;
    height: 45px;
    bottom: 32%;
    right: 35%;
    transform: rotate(45deg);
    animation-delay: 6s;
}

.value-marker-results {
    width: 55px;
    height: 55px;
    bottom: 45%;
    right: 18%;
    border-radius: 50%;
    animation-delay: 9s;
}

@keyframes value-marker-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-22px) rotate(12deg);
        opacity: 0.8;
    }
}

/* Client Success Elements */
.services-success-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.success-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08), rgba(220, 38, 38, 0.08));
    border: 2px solid rgba(239, 68, 68, 0.2);
    animation: success-element-pulse 10s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(239, 68, 68, 0.1);
}

.success-element-growth {
    width: 40px;
    height: 40px;
    top: 38%;
    left: 58%;
    border-radius: 50%;
    animation-delay: 0s;
}

.success-element-satisfaction {
    width: 50px;
    height: 50px;
    top: 55%;
    left: 62%;
    border-radius: 50%;
    animation-delay: 3s;
}

.success-element-achievement {
    width: 45px;
    height: 45px;
    bottom: 18%;
    left: 68%;
    transform: rotate(45deg);
    animation-delay: 6s;
}

@keyframes success-element-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
        box-shadow: 0 4px 15px rgba(239, 68, 68, 0.1);
    }
    50% {
        transform: scale(1.3);
        opacity: 1;
        box-shadow: 0 8px 25px rgba(239, 68, 68, 0.2);
    }
}

/* Static Gradient Background - Performance Optimized */
.services-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, 
        rgba(37, 99, 235, 0.02) 0%, 
        rgba(118, 75, 162, 0.015) 25%, 
        rgba(59, 130, 246, 0.02) 50%, 
        rgba(147, 51, 234, 0.015) 75%, 
        rgba(37, 99, 235, 0.02) 100%);
    z-index: 1;
}

@keyframes gradient-shift {
    0%, 100% {
        transform: scale(1) rotate(0deg);
        opacity: 0.4;
    }
    25% {
        transform: scale(1.02) rotate(45deg);
        opacity: 0.6;
    }
    50% {
        transform: scale(1.08) rotate(90deg);
        opacity: 0.8;
    }
    75% {
        transform: scale(1.02) rotate(135deg);
        opacity: 0.6;
    }
}

/* Enhanced Particles */
.services-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.services-particle {
    position: absolute;
    background: linear-gradient(45deg, 
        rgba(37, 99, 235, 0.15), 
        rgba(118, 75, 162, 0.12),
        rgba(59, 130, 246, 0.10));
    border-radius: 50%;
    animation: float-services-particle 20s ease-in-out infinite;
    box-shadow: 0 0 15px rgba(37, 99, 235, 0.2);
}

.services-particle-1 {
    width: 80px;
    height: 80px;
    top: 20%;
    left: 10%;
    animation-delay: 0s;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.12), rgba(59, 130, 246, 0.08));
}

.services-particle-2 {
    width: 100px;
    height: 100px;
    top: 70%;
    right: 15%;
    animation-delay: 5s;
    background: linear-gradient(45deg, rgba(118, 75, 162, 0.1), rgba(147, 51, 234, 0.06));
}

.services-particle-3 {
    width: 60px;
    height: 60px;
    bottom: 30%;
    left: 20%;
    animation-delay: 10s;
    background: linear-gradient(45deg, rgba(59, 130, 246, 0.08), rgba(37, 99, 235, 0.06));
}

.services-particle-4 {
    width: 50px;
    height: 50px;
    top: 45%;
    right: 25%;
    animation-delay: 3s;
    background: linear-gradient(45deg, rgba(147, 51, 234, 0.06), rgba(118, 75, 162, 0.04));
}

.services-particle-5 {
    width: 75px;
    height: 75px;
    bottom: 15%;
    right: 15%;
    animation-delay: 7s;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.07), rgba(59, 130, 246, 0.05));
}

.services-particle-6 {
    width: 45px;
    height: 45px;
    top: 15%;
    left: 35%;
    animation-delay: 13s;
    background: linear-gradient(45deg, rgba(118, 75, 162, 0.05), rgba(147, 51, 234, 0.03));
}

@keyframes float-services-particle {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-15px) scale(1.05);
        opacity: 0.5;
    }
}

/* Enhanced Geometric Shapes */
.services-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.services-shape {
    position: absolute;
    background: rgba(37, 99, 235, 0.12);
    border: 2px solid rgba(37, 99, 235, 0.2);
    animation: float-services-shape 25s ease-in-out infinite;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
}

.services-shape-1 {
    width: 120px;
    height: 120px;
    top: 10%;
    right: 10%;
    border-radius: 50%;
    animation-delay: 0s;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.06), rgba(59, 130, 246, 0.04));
    border: 2px solid rgba(37, 99, 235, 0.12);
}

.services-shape-2 {
    width: 100px;
    height: 100px;
    bottom: 15%;
    left: 10%;
    transform: rotate(45deg);
    animation-delay: 10s;
    background: linear-gradient(45deg, rgba(118, 75, 162, 0.05), rgba(147, 51, 234, 0.03));
    border: 1px solid rgba(118, 75, 162, 0.1);
}

.services-shape-3 {
    width: 80px;
    height: 80px;
    top: 60%;
    left: 5%;
    border-radius: 20px;
    animation-delay: 5s;
    background: linear-gradient(45deg, rgba(59, 130, 246, 0.05), rgba(37, 99, 235, 0.03));
    border: 1px solid rgba(59, 130, 246, 0.08);
}

.services-shape-4 {
    width: 60px;
    height: 60px;
    bottom: 40%;
    right: 20%;
    transform: rotate(30deg);
    animation-delay: 15s;
    background: linear-gradient(45deg, rgba(147, 51, 234, 0.04), rgba(118, 75, 162, 0.02));
    border: 1px solid rgba(147, 51, 234, 0.06);
}

.services-shape-5 {
    width: 90px;
    height: 90px;
    top: 25%;
    left: 25%;
    border-radius: 50%;
    animation-delay: 8s;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.04), rgba(59, 130, 246, 0.02));
    border: 1px solid rgba(37, 99, 235, 0.08);
}

.services-shape-6 {
    width: 70px;
    height: 70px;
    bottom: 25%;
    right: 5%;
    transform: rotate(60deg);
    animation-delay: 12s;
    background: linear-gradient(45deg, rgba(118, 75, 162, 0.04), rgba(147, 51, 234, 0.02));
    border: 1px solid rgba(118, 75, 162, 0.06);
}

@keyframes float-services-shape {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.2;
    }
    50% {
        transform: translateY(-10px) scale(1.03);
        opacity: 0.4;
    }
}

/* Restored Visual Appeal with Performance Optimizations */

/* Static Decorative Elements - Performance Optimized */
.services-lines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.services-line {
    position: absolute;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(37, 99, 235, 0.05) 50%, 
        transparent 100%);
    height: 1px;
}

.services-line-1 {
    width: 120px;
    top: 30%;
    left: 20%;
    transform: translateX(20px);
    opacity: 0.3;
}

.services-line-2 {
    width: 100px;
    top: 70%;
    right: 25%;
    transform: translateX(-20px);
    opacity: 0.3;
}

/* Static Central Glow */
.services-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 150px;
    height: 150px;
    background: radial-gradient(circle, 
        rgba(37, 99, 235, 0.04) 0%, 
        rgba(59, 130, 246, 0.02) 40%, 
        transparent 100%);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    opacity: 0.2;
}

/* Additional Decorative Elements */
.services-dots {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.services-dot {
    position: absolute;
    width: 4px;
    height: 4px;
    background: rgba(37, 99, 235, 0.3);
    border-radius: 50%;
    animation: dot-pulse 8s ease-in-out infinite;
}

.services-dot-1 {
    top: 20%;
    left: 15%;
    animation-delay: 0s;
}

.services-dot-2 {
    top: 65%;
    right: 20%;
    animation-delay: 2s;
}

.services-dot-3 {
    bottom: 35%;
    left: 30%;
    animation-delay: 4s;
}

.services-dot-4 {
    top: 40%;
    right: 35%;
    animation-delay: 6s;
}

@keyframes dot-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.3;
    }
    50% {
        transform: scale(1.5);
        opacity: 0.6;
    }
}

/* Performance Optimized - Minimal Animations */
@media (prefers-reduced-motion: reduce) {
    .services-particle,
    .services-shape,
    .services-dot {
        animation: none !important;
        opacity: 0.1 !important;
    }
}

/* Division Overview */
.divisions-overview {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.overview-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.4s both;
}

.overview-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s ease;
}

.overview-card:hover::before {
    left: 100%;
}

.overview-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.overview-card:hover .overview-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 35px rgba(37, 99, 235, 0.3);
}

.overview-card h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.overview-card p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.overview-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.overview-stat {
    text-align: center;
    padding: 1.5rem;
    background: rgba(37, 99, 235, 0.05);
    border-radius: 16px;
    border: 1px solid rgba(37, 99, 235, 0.1);
    transition: all 0.3s ease;
}

.overview-stat:hover {
    background: rgba(37, 99, 235, 0.1);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.2);
}

.overview-stat .stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #2563eb;
    margin-bottom: 0.5rem;
}

.overview-stat .stat-label {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

/* Services Grid */
.services-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

/* Programme and Jobs Section Stat Numbers - More Visible */
.programme .overview-card .stat-number,
.jobs .overview-card .stat-number {
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    margin-bottom: 0.5rem !important;
    display: block !important;
    text-shadow: 0 0 20px rgba(59, 130, 246, 0.6), 0 0 10px rgba(99, 102, 241, 0.4) !important;
    letter-spacing: -0.02em !important;
    position: relative !important;
}

.programme .overview-card .stat-label,
.jobs .overview-card .stat-label {
    font-size: 1rem !important;
    color: #6b7280 !important;
    font-weight: 700 !important;
}

/* Expert Trainers Section */
.expert-trainers {
    margin: 4rem 0;
    padding: 3rem 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.03) 0%, rgba(118, 75, 162, 0.03) 100%);
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}

.expert-trainers::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%);
    border-radius: 20px;
    z-index: 1;
}

.trainers-section-header {
    text-align: center;
    margin-bottom: 3rem;
    position: relative;
    z-index: 2;
}

.trainers-section-header .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    color: white;
    padding: 0.75rem 1.5rem;
    border-radius: 50px;
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}

.trainers-section-header h3 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.trainers-section-header p {
    font-size: 1.125rem;
    color: #6b7280;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Trainers Carousel Container */
.trainers-carousel-container {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem 0;
    z-index: 2;
}

.trainers-carousel {
    position: relative;
    overflow: hidden;
    border-radius: 25px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.9) 0%, rgba(248, 250, 252, 0.9) 100%);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Organized Background Elements */
.trainers-carousel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        radial-gradient(circle at 20% 20%, rgba(59, 130, 246, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(99, 102, 241, 0.08) 0%, transparent 50%),
        radial-gradient(circle at 40% 60%, rgba(139, 92, 246, 0.06) 0%, transparent 40%);
    border-radius: 25px;
    z-index: 1;
}

/* Individual Crystal Clear Bubbles */
.trainers-carousel::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, transparent 50%),
        linear-gradient(45deg, rgba(99, 102, 241, 0.08) 0%, transparent 50%),
        linear-gradient(225deg, rgba(139, 92, 246, 0.06) 0%, transparent 50%),
        linear-gradient(315deg, rgba(59, 130, 246, 0.05) 0%, transparent 50%);
    border-radius: 25px;
    z-index: 1;
}


/* Organized Corner Accents */
.trainers-carousel-container::before {
    content: '';
    position: absolute;
    top: -10px;
    left: -10px;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(99, 102, 241, 0.1));
    border-radius: 50%;
    z-index: 0;
    animation: pulseCorner 3s ease-in-out infinite;
}

.trainers-carousel-container::after {
    content: '';
    position: absolute;
    bottom: -15px;
    right: -15px;
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.15), rgba(59, 130, 246, 0.1));
    border-radius: 50%;
    z-index: 0;
    animation: pulseCorner 3s ease-in-out infinite 1.5s;
}

@keyframes pulseCorner {
    0%, 100% {
        transform: scale(1);
        opacity: 0.3;
    }
    50% {
        transform: scale(1.2);
        opacity: 0.6;
    }
}

.trainers-track {
    display: flex;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
}

.trainer-card {
    min-width: 100%;
    flex-shrink: 0;
    padding: 3rem 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.3;
    transform: scale(0.8);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.trainer-card.active {
    opacity: 1;
    transform: scale(1);
}

.trainer-card-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    max-width: 400px;
    width: 100%;
    text-align: center;
}

.trainer-card-inner .trainer-image {
    flex-shrink: 0;
    width: 160px;
    height: 200px;
    margin: 0;
    border-radius: 12px;
    overflow: hidden;
    border: 6px solid #f8fafc;
    box-shadow: 0 15px 35px rgba(59, 130, 246, 0.2);
    transition: all 0.3s ease;
    position: relative;
}

.trainer-card.active .trainer-image {
    border-color: #3b82f6;
    box-shadow: 0 20px 50px rgba(59, 130, 246, 0.3);
}

.trainer-card-inner .trainer-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    transition: transform 0.3s ease;
}

.trainer-card.active .trainer-image img {
    transform: scale(1.05);
}

.trainer-card-inner .trainer-info {
    flex: 1;
    text-align: left;
}

.trainer-card-inner .trainer-info h4 {
    font-size: 2.5rem;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.5rem;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.trainer-card-inner .trainer-title {
    font-size: 1.25rem;
    color: #3b82f6;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.trainer-card-inner .trainer-experience {
    font-size: 1rem;
    color: #6b7280;
    margin-bottom: 1.5rem;
    font-weight: 500;
}

.trainer-card-inner .trainer-description {
    margin-bottom: 1.5rem;
}

.trainer-card-inner .trainer-description p {
    font-size: 0.95rem;
    color: #4b5563;
    line-height: 1.6;
    margin: 0;
    font-style: italic;
}

/* Trainers CTA Button */
.trainers-cta {
    margin-top: 2rem;
    text-align: center;
}

.trainers-cta .btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    font-size: 1.1rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 12px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.2);
}

.trainers-cta .btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(59, 130, 246, 0.3);
}

/* Trainers Preview Section */
.trainers-preview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-top: 3rem;
    padding: 2rem;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border-radius: 20px;
    border: 1px solid #e2e8f0;
}

.trainer-preview-card {
    background: white;
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #f1f5f9;
}

.trainer-preview-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
    border-color: #3b82f6;
}

.trainer-preview-image {
    width: 80px;
    height: 80px;
    margin: 0 auto 1rem;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid #f8fafc;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.2);
}

.trainer-preview-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.trainer-preview-info {
    text-align: center;
}

.trainer-preview-info h4 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.5rem;
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.trainer-preview-title {
    font-size: 0.95rem;
    color: #3b82f6;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.trainer-preview-experience {
    font-size: 0.85rem;
    color: #6b7280;
    font-weight: 500;
    margin: 0;
}

/* Trainers List Layout */
.trainers-list-container {
    margin-top: 2rem;
    width: 100%;
    overflow: visible;
}

.trainers-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 2rem;
    padding: 2rem 0;
    width: 100%;
    overflow: visible;
}

.trainers-grid .trainer-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid #f1f5f9;
    transition: all 0.3s ease;
    position: relative;
    overflow: visible;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    opacity: 1;
    filter: none;
    z-index: 1;
    backdrop-filter: none;
}

.trainers-grid .trainer-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
    border-color: #3b82f6;
}

.trainers-grid .trainer-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
    border-radius: 20px 20px 0 0;
    opacity: 1;
    filter: none;
    z-index: 1;
}

.trainers-grid .trainer-card-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    text-align: center;
    max-width: 100%;
    width: 100%;
    opacity: 1;
    filter: none;
    z-index: 2;
    position: relative;
}

.trainers-grid .trainer-card-inner .trainer-image {
    width: 120px;
    height: 120px;
    margin: 0;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid #f8fafc;
    box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2);
    transition: all 0.3s ease;
    position: relative;
}

.trainers-grid .trainer-card:hover .trainer-image {
    transform: scale(1.05);
    box-shadow: 0 12px 35px rgba(59, 130, 246, 0.3);
}

.trainers-grid .trainer-card-inner .trainer-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 1;
    filter: none;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.trainers-grid .trainer-card-inner .trainer-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.875rem;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
    border: 3px solid white;
}

.trainers-grid .trainer-card-inner .trainer-info h4 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.5rem;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    opacity: 1;
    filter: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.trainers-grid .trainer-card-inner .trainer-title {
    font-size: 1rem;
    color: #3b82f6;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.trainers-grid .trainer-card-inner .trainer-experience {
    font-size: 0.9rem;
    color: #6b7280;
    margin-bottom: 1rem;
    font-weight: 500;
}

.trainers-grid .trainer-card-inner .trainer-specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    margin-bottom: 1rem;
}

.trainers-grid .trainer-card-inner .specialty-tag {
    background: linear-gradient(135deg, #f0f9ff, #e0f2fe);
    color: #0369a1;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    border: 1px solid #bae6fd;
}

.trainers-grid .trainer-card-inner .trainer-description {
    margin-bottom: 1rem;
}

.trainers-grid .trainer-card-inner .trainer-description p {
    font-size: 0.9rem;
    color: #4b5563;
    line-height: 1.6;
    margin: 0;
    font-style: italic;
}

.trainers-grid .trainer-card-inner .trainer-credentials {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
}

.trainers-grid .trainer-card-inner .credential {
    background: linear-gradient(135deg, #fef3c7, #fde68a);
    color: #92400e;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    border: 1px solid #fbbf24;
}

.trainer-card-inner .trainer-specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.trainer-card-inner .specialty-tag {
    background: linear-gradient(135deg, #f1f5f9, #e2e8f0);
    color: #475569;
    padding: 0.5rem 1rem;
    border-radius: 25px;
    font-size: 0.875rem;
    font-weight: 600;
    border: 2px solid #e2e8f0;
    transition: all 0.3s ease;
}

.trainer-card.active .specialty-tag {
    background: linear-gradient(135deg, #dbeafe, #bfdbfe);
    color: #1e40af;
    border-color: #3b82f6;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.2);
}

.trainer-card-inner .trainer-credentials {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.trainer-card-inner .credential {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 25px;
    font-size: 0.875rem;
    font-weight: 700;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
    transition: all 0.3s ease;
}

.trainer-card.active .credential {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.4);
}

/* Navigation Controls */
.carousel-controls {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0 1rem;
    pointer-events: none;
    z-index: 10;
}

.carousel-btn {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    border: none;
    color: white;
    font-size: 1.25rem;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 8px 25px rgba(59, 130, 246, 0.3);
    pointer-events: all;
    display: flex;
    align-items: center;
    justify-content: center;
}

.carousel-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 12px 35px rgba(59, 130, 246, 0.4);
}

.carousel-btn:active {
    transform: scale(0.95);
}

.carousel-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    transform: scale(1);
}

/* Dots Navigation */
.carousel-dots {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 2rem;
}

.dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #d1d5db;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.dot.active {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    transform: scale(1.2);
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4);
}

.dot:hover {
    background: #9ca3af;
    transform: scale(1.1);
}

.dot.active:hover {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
}

.trainer-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border: 1px solid rgba(37, 99, 235, 0.1);
    position: relative;
    overflow: hidden;
}

.trainer-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.1), transparent);
    transition: left 0.6s ease;
}

.trainer-card:hover::before {
    left: 100%;
}

.trainer-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.2);
    border-color: rgba(37, 99, 235, 0.3);
}

.trainer-image {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 1.5rem;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid #f3f4f6;
    transition: all 0.3s ease;
}

.trainer-card:hover .trainer-image {
    border-color: #3b82f6;
    transform: scale(1.05);
}

.trainer-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.trainer-card:hover .trainer-image img {
    transform: scale(1.1);
}

.trainer-badge {
    display: none;
}

.trainer-info h4 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.5rem;
}

.trainer-title {
    font-size: 1rem;
    color: #3b82f6;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.trainer-experience {
    font-size: 0.875rem;
    color: #6b7280;
    margin-bottom: 1rem;
}

.trainer-specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    margin-bottom: 1rem;
}

.specialty-tag {
    background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
    color: #374151;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 500;
    border: 1px solid #d1d5db;
    transition: all 0.3s ease;
}

.trainer-card:hover .specialty-tag {
    background: linear-gradient(135deg, #dbeafe, #bfdbfe);
    color: #1e40af;
    border-color: #3b82f6;
}

.trainer-credentials {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
}

.credential {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3);
}

/* Responsive Design for Trainers Carousel */
@media (max-width: 768px) {
    .expert-trainers {
        margin: 3rem 0;
        padding: 2rem 0;
    }
    
    .trainers-section-header h3 {
        font-size: 2rem;
    }
    
    .trainers-carousel-container {
        max-width: 90%;
        padding: 1rem 0;
    }
    
    .trainer-card {
        padding: 2rem 1.5rem;
    }
    
    .trainer-card-inner {
        flex-direction: column;
        text-align: center;
        gap: 1.5rem;
        max-width: 300px;
    }
    
    .trainer-card-inner .trainer-image {
        width: 120px;
        height: 150px;
    }
    
    .trainer-card-inner .trainer-info {
        text-align: center;
    }
    
    .trainer-card-inner .trainer-info h4 {
        font-size: 2rem;
    }
    
    .carousel-controls {
        padding: 0 0.5rem;
    }
    
    .carousel-btn {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .trainers-carousel-container {
        max-width: 95%;
    }
    
    .trainer-card {
        padding: 1.5rem 1rem;
    }
    
    .trainer-card-inner {
        gap: 1.25rem;
        max-width: 250px;
    }
    
    .trainer-card-inner .trainer-image {
        width: 100px;
        height: 125px;
    }
    
    .trainer-card-inner .trainer-info h4 {
        font-size: 1.75rem;
    }
    
    .trainer-card-inner .trainer-description p {
        font-size: 0.9rem;
    }
    
    .trainers-preview {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 1.5rem;
        padding: 1.5rem;
    }
    
    .trainer-preview-card {
        padding: 1.25rem;
    }
    
    .trainer-preview-image {
        width: 70px;
        height: 70px;
    }
    
    .trainer-preview-info h4 {
        font-size: 1.1rem;
    }
    
    .trainer-preview-title {
        font-size: 0.9rem;
    }
    
    .trainer-preview-experience {
        font-size: 0.8rem;
    }
    
    .trainers-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 1.5rem;
        padding: 1.5rem 0;
        width: 100%;
        overflow: visible;
    }
    
    .trainers-grid .trainer-card {
        padding: 1.5rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-image {
        width: 100px;
        height: 100px;
    }
    
    .trainers-grid .trainer-card-inner .trainer-info h4 {
        font-size: 1.25rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-title {
        font-size: 0.9rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-experience {
        font-size: 0.8rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-description p {
        font-size: 0.85rem;
    }
    
    .trainers-grid {
        grid-template-columns: 1fr;
        gap: 1.25rem;
        padding: 1rem 0;
    }
    
    .trainers-grid .trainer-card {
        padding: 1.25rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-image {
        width: 80px;
        height: 80px;
    }
    
    .trainers-grid .trainer-card-inner .trainer-info h4 {
        font-size: 1.1rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-title {
        font-size: 0.85rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-experience {
        font-size: 0.75rem;
    }
    
    .trainers-grid .trainer-card-inner .trainer-description p {
        font-size: 0.8rem;
    }
    
    .trainers-grid .trainer-card-inner .specialty-tag {
        font-size: 0.75rem;
        padding: 0.2rem 0.6rem;
    }
    
    .trainers-grid .trainer-card-inner .credential {
        font-size: 0.75rem;
        padding: 0.2rem 0.6rem;
    }
    
    .trainers-grid {
        grid-template-columns: 1fr;
        gap: 1.25rem;
        padding: 1rem 0;
        width: 100%;
        overflow: visible;
    }
    
    .trainers-grid .trainer-card {
        padding: 1.25rem;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    
    .trainer-card-inner .trainer-title {
        font-size: 1rem;
    }
    
    .trainer-card-inner .trainer-experience {
        font-size: 0.875rem;
    }
    
    .trainer-card-inner .specialty-tag {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
    }
    
    .trainer-card-inner .credential {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
    }
    
    .carousel-btn {
        width: 35px;
        height: 35px;
        font-size: 0.875rem;
    }
    
    .carousel-dots {
        margin-top: 1.5rem;
    }
    
    .dot {
        width: 10px;
        height: 10px;
    }
}

/* Responsive styles for programme/jobs stat numbers */
@media (max-width: 768px) {
    .programme .overview-card .stat-number,
    .jobs .overview-card .stat-number {
        font-size: 2rem !important;
    }
    
    .programme .overview-card .stat-label,
    .jobs .overview-card .stat-label {
        font-size: 0.8rem !important;
    }
}

@media (max-width: 480px) {
    .programme .overview-card .stat-number,
    .jobs .overview-card .stat-number {
        font-size: 1.75rem !important;
    }
    
    .programme .overview-card .stat-label,
    .jobs .overview-card .stat-label {
        font-size: 0.75rem !important;
    }
}

.services-grid .division-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border: 2px solid rgba(37, 99, 235, 0.2);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation: fadeInUp 1s ease-out both;
    width: auto;
    height: auto;
    display: block;
    flex-direction: unset;
    align-items: unset;
    justify-content: unset;
    text-align: unset;
    transform-style: preserve-3d;
    perspective: 1000px;
    box-shadow: 0 10px 30px rgba(37, 99, 235, 0.1), 0 4px 15px rgba(0, 0, 0, 0.05);
}

.division-card:nth-child(1) { 
    animation-delay: 0.6s; 
    border-color: rgba(59, 130, 246, 0.3);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(239, 246, 255, 0.9) 100%);
}

.division-card:nth-child(2) { 
    animation-delay: 0.8s; 
    border-color: rgba(16, 185, 129, 0.3);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(236, 253, 245, 0.9) 100%);
}

.division-card:hover {
    transform: translateY(-15px) rotateX(5deg) rotateY(5deg);
    box-shadow: 0 30px 60px rgba(37, 99, 235, 0.15), 0 0 40px rgba(59, 130, 246, 0.1);
    border-color: rgba(37, 99, 235, 0.2);
}

/* Enhanced card-glow for services section */
.services-grid .division-card .card-glow {
    background: radial-gradient(circle, 
        rgba(37, 99, 235, 0.12) 0%, 
        rgba(59, 130, 246, 0.08) 30%, 
        rgba(118, 75, 162, 0.05) 60%, 
        transparent 100%) !important;
    opacity: 0.9 !important;
    animation: services-card-glow 8s ease-in-out infinite;
}

/* Distinct glow colors for each division */
.division-card:nth-child(1) .card-glow {
    background: radial-gradient(circle, 
        rgba(59, 130, 246, 0.15) 0%, 
        rgba(37, 99, 235, 0.10) 30%, 
        rgba(96, 165, 250, 0.06) 60%, 
        transparent 100%) !important;
}

.division-card:nth-child(2) .card-glow {
    background: radial-gradient(circle, 
        rgba(16, 185, 129, 0.15) 0%, 
        rgba(52, 211, 153, 0.10) 30%, 
        rgba(34, 197, 94, 0.06) 60%, 
        transparent 100%) !important;
}

.card-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(59, 130, 246, 0.05) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

@keyframes services-card-glow {
    0%, 100% {
        transform: scale(1) rotate(0deg);
        opacity: 0.7;
    }
    50% {
        transform: scale(1.15) rotate(180deg);
        opacity: 1;
    }
}

.card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.services-grid .division-card .service-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(45deg, #2563eb, #3b82f6);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.75rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    margin-bottom: 0;
    position: relative;
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.3);
}

.services-grid .division-card .service-icon::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s ease;
}

.division-card:hover .service-icon {
    transform: scale(1.15) rotate(10deg);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.4), 0 0 30px rgba(59, 130, 246, 0.3);
    background: linear-gradient(45deg, #1d4ed8, #3b82f6);
}

/* Distinct colors for each division's service icon */
.division-card:nth-child(1) .service-icon {
    background: linear-gradient(45deg, #2563eb, #3b82f6);
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.3);
}

.division-card:nth-child(2) .service-icon {
    background: linear-gradient(45deg, #10b981, #34d399);
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.3);
}

.division-card:nth-child(1):hover .service-icon {
    background: linear-gradient(45deg, #1d4ed8, #2563eb);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.4), 0 0 30px rgba(59, 130, 246, 0.3);
}

.division-card:nth-child(2):hover .service-icon {
    background: linear-gradient(45deg, #059669, #10b981);
    box-shadow: 0 20px 40px rgba(16, 185, 129, 0.4), 0 0 30px rgba(52, 211, 153, 0.3);
}

.division-card:hover .service-icon::before {
    left: 100%;
}

.card-badge {
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    color: #1f2937;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 0 5px 15px rgba(255, 215, 0, 0.3);
    border: 1px solid rgba(255, 215, 0, 0.4);
}

/* Distinct badge colors for each division */
.division-card:nth-child(1) .card-badge {
    background: linear-gradient(45deg, #3b82f6, #60a5fa);
    color: white;
    box-shadow: 0 5px 15px rgba(59, 130, 246, 0.3);
    border: 1px solid rgba(59, 130, 246, 0.4);
}

.division-card:nth-child(2) .card-badge {
    background: linear-gradient(45deg, #10b981, #34d399);
    color: white;
    box-shadow: 0 5px 15px rgba(16, 185, 129, 0.3);
    border: 1px solid rgba(16, 185, 129, 0.4);
}

.services-grid .division-card .card-content h3 {
    font-size: 1.75rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1f2937 0%, #374151 50%, #4b5563 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 1rem;
    position: relative;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    text-shadow: 0 2px 4px rgba(31, 41, 55, 0.1);
}

.services-grid .division-card:hover .card-content h3 {
    background: linear-gradient(135deg, #2563eb 0%, #3b82f6 50%, #60a5fa 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 4px 8px rgba(37, 99, 235, 0.2);
    transform: translateY(-2px);
}

.services-grid .division-card .division-description {
    font-size: 1.125rem;
    color: #6b7280 !important;
    line-height: 1.7;
    margin-bottom: 2rem;
    font-weight: 500;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
}

.services-grid .division-card:hover .division-description {
    color: #374151 !important;
    text-shadow: 0 1px 2px rgba(55, 65, 81, 0.1);
    transform: translateY(-1px);
}

.division-services {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.division-service {
    display: flex;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(37, 99, 235, 0.03);
    border-radius: 16px;
    border: 1px solid rgba(37, 99, 235, 0.08);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    animation: fadeInUp 1s ease-out both;
    position: relative;
    overflow: hidden;
}

.division-service::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.1), transparent);
    transition: left 0.6s ease;
}

.division-service:nth-child(1) { animation-delay: 1s; }
.division-service:nth-child(2) { animation-delay: 1.1s; }
.division-service:nth-child(3) { animation-delay: 1.2s; }
.division-service:nth-child(4) { animation-delay: 1.3s; }
.division-service:nth-child(5) { animation-delay: 1.4s; }

.division-service:hover {
    background: rgba(37, 99, 235, 0.08);
    transform: translateX(10px) scale(1.02);
    box-shadow: 0 8px 25px rgba(37, 99, 235, 0.15), 0 0 20px rgba(59, 130, 246, 0.1);
    border-color: rgba(37, 99, 235, 0.2);
}

.division-service:hover::before {
    left: 100%;
}

.service-icon-small {
    width: 50px;
    height: 50px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 1.25rem;
    flex-shrink: 0;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    overflow: hidden;
}

.service-icon-small::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s ease;
}

.division-service:hover .service-icon-small {
    transform: scale(1.15) rotate(10deg);
    box-shadow: 0 12px 30px rgba(255, 215, 0, 0.4), 0 0 20px rgba(255, 237, 78, 0.3);
    background: linear-gradient(45deg, #fbbf24, #f59e0b);
}

.division-service:hover .service-icon-small::before {
    left: 100%;
}

.services-grid .division-card .service-content h4 {
    font-size: 1.125rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1f2937 0%, #374151 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 0.5rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    text-shadow: 0 1px 2px rgba(31, 41, 55, 0.1);
}

.services-grid .division-card .service-content p {
    color: #6b7280 !important;
    line-height: 1.6;
    margin-bottom: 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.division-service:hover .service-content h4 {
    background: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 2px 4px rgba(37, 99, 235, 0.2);
    transform: translateY(-1px);
}

.division-service:hover .service-content p {
    color: #4b5563 !important;
    text-shadow: 0 1px 2px rgba(75, 85, 99, 0.1);
}

/* Override general card-content p rule for services */
.services-grid .division-card .card-content p {
    color: #4b5563 !important;
}

.service-features {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.service-features .feature-tag {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(59, 130, 246, 0.1) 100%);
    color: #2563eb;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    border: 1px solid rgba(37, 99, 235, 0.2);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    overflow: hidden;
}

.service-features .feature-tag::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.2), transparent);
    transition: left 0.6s ease;
}

.service-features .feature-tag:hover {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.15) 0%, rgba(59, 130, 246, 0.15) 100%);
    color: #1d4ed8;
    border-color: rgba(37, 99, 235, 0.3);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.2);
}

.service-features .feature-tag:hover::before {
    left: 100%;
}

.card-footer {
    text-align: center;
}

/* Service Benefits */
.service-benefits {
    z-index: 2;
    position: relative;
    padding: 2rem 0;
}

.benefits-header {
    text-align: center;
    margin-bottom: 4rem;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.benefits-header h3 {
    font-size: 2.5rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1f2937 0%, #374151 50%, #4b5563 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(31, 41, 55, 0.1);
    animation: textReveal 1s ease-out 1.6s both;
}

.benefits-header p {
    color: #6b7280;
    font-size: 1.125rem;
    max-width: 600px;
    margin: 0 auto;
    font-weight: 500;
    line-height: 1.7;
    animation: textReveal 1s ease-out 1.8s both;
}

@keyframes textReveal {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.service-benefits .benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.service-benefits .benefit-item {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 2.5rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.service-benefits .benefit-item:nth-child(1) { animation-delay: 1.7s; }
.service-benefits .benefit-item:nth-child(2) { animation-delay: 1.8s; }
.service-benefits .benefit-item:nth-child(3) { animation-delay: 1.9s; }
.service-benefits .benefit-item:nth-child(4) { animation-delay: 2s; }

.service-benefits .benefit-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.15);
}

.service-benefits .benefit-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.75rem;
    transition: all 0.3s ease;
}

.service-benefits .benefit-item:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.service-benefits .benefit-item h4 {
    font-size: 1.25rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1f2937 0%, #374151 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 1rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    text-shadow: 0 1px 2px rgba(31, 41, 55, 0.1);
}

.service-benefits .benefit-item p {
    color: #6b7280;
    line-height: 1.7;
    margin: 0;
    font-size: 0.95rem;
    font-weight: 500;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.service-benefits .benefit-item:hover h4 {
    background: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 2px 4px rgba(37, 99, 235, 0.2);
    transform: translateY(-1px);
}

.service-benefits .benefit-item:hover p {
    color: #4b5563;
    text-shadow: 0 1px 2px rgba(75, 85, 99, 0.1);
}

/* ===== CONTACT SECTION ===== */
.contact {
    position: relative;
    padding: 6rem 0;
    background: #dbeafe;
    overflow: hidden;
}

/* Enhanced Background Elements */
.contact-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* Animated Gradient Waves */
.contact-gradient-waves {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.contact-wave {
    position: absolute;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, 
        rgba(224, 242, 254, 0.1) 0%, 
        rgba(179, 229, 252, 0.08) 25%, 
        rgba(77, 208, 225, 0.06) 50%, 
        rgba(0, 151, 167, 0.08) 75%, 
        rgba(0, 96, 100, 0.1) 100%);
    border-radius: 50%;
    animation: contact-wave-float 20s ease-in-out infinite;
}

.contact-wave-1 {
    top: -50%;
    left: -50%;
    animation-delay: 0s;
}

.contact-wave-2 {
    top: -30%;
    right: -50%;
    animation-delay: 7s;
    background: linear-gradient(45deg, 
        rgba(179, 229, 252, 0.08) 0%, 
        rgba(77, 208, 225, 0.06) 25%, 
        rgba(0, 151, 167, 0.08) 50%, 
        rgba(0, 96, 100, 0.1) 75%, 
        rgba(224, 242, 254, 0.1) 100%);
}

.contact-wave-3 {
    bottom: -40%;
    left: -30%;
    animation-delay: 14s;
    background: linear-gradient(45deg, 
        rgba(77, 208, 225, 0.06) 0%, 
        rgba(0, 151, 167, 0.08) 25%, 
        rgba(0, 96, 100, 0.1) 50%, 
        rgba(224, 242, 254, 0.1) 75%, 
        rgba(179, 229, 252, 0.08) 100%);
}

@keyframes contact-wave-float {
    0%, 100% {
        transform: scale(1) rotate(0deg);
        opacity: 0.3;
    }
    33% {
        transform: scale(1.1) rotate(120deg);
        opacity: 0.5;
    }
    66% {
        transform: scale(1.05) rotate(240deg);
        opacity: 0.4;
    }
}

/* Enhanced Floating Contact Icons */
.contact-floating-icons {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.contact-floating-icon {
    position: absolute;
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, rgba(224, 242, 254, 0.2), rgba(77, 208, 225, 0.2));
    backdrop-filter: blur(10px);
    border: 1px solid rgba(77, 208, 225, 0.3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(0, 96, 100, 0.8);
    font-size: 1.2rem;
    animation: contact-icon-float 8s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(77, 208, 225, 0.2);
    transition: all 0.3s ease;
}

.contact-floating-icon:hover {
    transform: scale(1.2);
    background: linear-gradient(135deg, rgba(77, 208, 225, 0.3), rgba(0, 151, 167, 0.3));
    color: rgba(0, 96, 100, 1);
    box-shadow: 0 8px 25px rgba(77, 208, 225, 0.3);
}

.contact-icon-1 {
    top: 15%;
    left: 10%;
    animation-delay: 0s;
}

.contact-icon-2 {
    top: 35%;
    right: 15%;
    animation-delay: 2s;
}

.contact-icon-3 {
    top: 65%;
    left: 20%;
    animation-delay: 4s;
}

.contact-icon-4 {
    bottom: 25%;
    right: 10%;
    animation-delay: 6s;
}

@keyframes contact-icon-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.7;
    }
    50% {
        transform: translateY(-15px) rotate(5deg);
        opacity: 1;
    }
}

/* Pulsing Connection Dots */
.contact-connection-dots {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.connection-dot {
    position: absolute;
    width: 8px;
    height: 8px;
    background: linear-gradient(135deg, #4dd0e1, #0097a7);
    border-radius: 50%;
    animation: connection-pulse 3s ease-in-out infinite;
    box-shadow: 0 0 10px rgba(77, 208, 225, 0.6);
}

.connection-dot-1 {
    top: 25%;
    left: 25%;
    animation-delay: 0s;
}

.connection-dot-2 {
    top: 45%;
    right: 30%;
    animation-delay: 1s;
}

.connection-dot-3 {
    bottom: 35%;
    left: 35%;
    animation-delay: 2s;
}

.connection-dot-4 {
    top: 75%;
    right: 25%;
    animation-delay: 0.5s;
}

.connection-dot-5 {
    top: 55%;
    left: 45%;
    animation-delay: 1.5s;
}

@keyframes connection-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
        box-shadow: 0 0 10px rgba(77, 208, 225, 0.6);
    }
    50% {
        transform: scale(1.5);
        opacity: 1;
        box-shadow: 0 0 20px rgba(77, 208, 225, 0.9);
    }
}

/* Enhanced Particles */
.contact-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.contact-particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(224, 242, 254, 0.2), rgba(77, 208, 225, 0.2));
    border-radius: 50%;
    animation: float-contact-particle 8s ease-in-out infinite;
}

.contact-particle-1 {
    width: 70px;
    height: 70px;
    top: 20%;
    left: 15%;
    animation-delay: 0s;
}

.contact-particle-2 {
    width: 90px;
    height: 90px;
    top: 70%;
    right: 20%;
    animation-delay: 3s;
}

.contact-particle-3 {
    width: 50px;
    height: 50px;
    bottom: 25%;
    left: 25%;
    animation-delay: 6s;
}

@keyframes float-contact-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
        opacity: 0.6;
    }
}

/* Enhanced Shapes */
.contact-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.contact-shape {
    position: absolute;
    background: rgba(77, 208, 225, 0.1);
    border: 1px solid rgba(77, 208, 225, 0.2);
    animation: float-contact-shape 10s ease-in-out infinite;
}

.contact-shape-1 {
    width: 110px;
    height: 110px;
    top: 30%;
    right: 15%;
    border-radius: 50%;
    animation-delay: 0s;
}

.contact-shape-2 {
    width: 80px;
    height: 80px;
    bottom: 20%;
    left: 10%;
    transform: rotate(45deg);
    animation-delay: 5s;
}

@keyframes float-contact-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.2;
    }
    50% {
        transform: translateY(-25px) rotate(180deg);
        opacity: 0.5;
    }
}

/* Contact Overview */
.contact-overview {
    margin-bottom: 4rem;
    z-index: 15;
    position: relative;
}

.contact-overview .overview-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(77, 208, 225, 0.2);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.4s both;
}

.contact-overview .overview-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(77, 208, 225, 0.1), transparent);
    transition: left 0.5s ease;
}

.contact-overview .overview-card:hover::before {
    left: 100%;
}

.contact-overview .overview-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #4dd0e1, #0097a7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.contact-overview .overview-card:hover .overview-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 35px rgba(77, 208, 225, 0.4);
}

.contact-overview .overview-card h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.contact-overview .overview-card p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.contact-overview .overview-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.contact-overview .overview-stat {
    text-align: center;
    padding: 1.5rem;
    background: rgba(77, 208, 225, 0.05);
    border-radius: 16px;
    border: 1px solid rgba(77, 208, 225, 0.1);
    transition: all 0.3s ease;
}

.contact-overview .overview-stat:hover {
    background: rgba(77, 208, 225, 0.1);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(77, 208, 225, 0.2);
}

.contact-overview .overview-stat .stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #0097a7;
    margin-bottom: 0.5rem;
}

.contact-overview .overview-stat .stat-label {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

/* Contact Content */
.contact-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    margin-bottom: 4rem;
    z-index: 15;
    position: relative;
}

/* Contact Information */
.contact-info {
    z-index: 15;
    position: relative;
}

.info-header {
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 0.6s both;
}

.info-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.info-header p {
    color: #6b7280;
    font-size: 1.125rem;
}

.contact-methods {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.contact-method {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(77, 208, 225, 0.2);
    border-radius: 16px;
    padding: 2rem;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
}

.contact-method:nth-child(1) { animation-delay: 0.8s; }
.contact-method:nth-child(2) { animation-delay: 1s; }
.contact-method:nth-child(3) { animation-delay: 1.2s; }
.contact-method:nth-child(4) { animation-delay: 1.4s; }

.contact-method:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.method-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(77, 208, 225, 0.15) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.contact-method {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
}

.method-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #4dd0e1, #0097a7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.contact-method:hover .method-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(77, 208, 225, 0.4);
}

.method-content h4 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 0.5rem;
}

.method-content p {
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 1rem;
    font-size: 0.875rem;
}

.method-features {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.method-features .feature-tag {
    background: rgba(37, 99, 235, 0.1);
    color: #2563eb;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

/* Social Connect */
.social-connect {
    margin-top: 3rem;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.social-connect h4 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1.5rem;
    text-align: center;
    position: relative;
}

.social-connect h4::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 2px;
    background: #f97316;
    border-radius: 1px;
}

.social-links {
    display: flex;
    gap: 0.5rem;
    flex-wrap: nowrap;
    justify-content: center;
    max-width: 900px;
    margin: 0 auto;
}

.social-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px !important;
    text-decoration: none;
    color: #374151;
    font-weight: 600;
    font-size: 0.875rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    min-width: 100px;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.social-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s;
}

.social-link:hover::before {
    left: 100%;
}

.social-link:hover {
    transform: translateY(-4px) scale(1.02);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
    border-color: rgba(255, 255, 255, 0.4);
}

.social-link i {
    font-size: 1.4rem;
    transition: all 0.3s ease;
}

.social-link:hover i {
    transform: scale(1.1);
}

.social-link span {
    font-weight: 600;
    transition: all 0.3s ease;
}

/* LinkedIn */
.social-link-1 {
    color: #0077b5;
}

.social-link-1:hover {
    background: #0077b5;
    color: white;
    border-color: #0077b5;
}

/* Facebook */
.social-link-2 {
    color: #1877f2;
}

.social-link-2:hover {
    background: #1877f2;
    color: white;
    border-color: #1877f2;
}

/* Instagram */
.social-link-3 {
    color: #e4405f;
}

.social-link-3:hover {
    background: #e4405f;
    color: white;
    border-color: #e4405f;
}

/* WhatsApp */
.social-link-4 {
    color: #25d366;
}

.social-link-4:hover {
    background: #25d366;
    color: white;
    border-color: #25d366;
}

/* Contact Form */
.contact-form-section {
    z-index: 15;
    position: relative;
    transition: all 0.3s ease;
}

.contact-form-section:hover {
    transform: translateY(-5px);
}

/* Form Focus Animations */
.contact-form-section:focus-within {
    transform: translateY(-3px);
}

/* Modern Contact Form Styles */
.modern-form-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(77, 208, 225, 0.2);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.8s both;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.modern-form-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
    border-color: rgba(77, 208, 225, 0.3);
}

/* Enhanced Form Glow Effect */
.modern-form-card::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(77, 208, 225, 0.1) 0%, transparent 70%);
    animation: contact-form-glow 10s linear infinite;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.modern-form-card:focus-within::before {
    opacity: 1;
}

@keyframes contact-form-glow {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.form-background-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(77, 208, 225, 0.15) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.form-header {
    text-align: center;
    margin-bottom: 2.5rem;
    position: relative;
}

.header-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #4dd0e1 0%, #0097a7 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
    box-shadow: 0 4px 15px rgba(77, 208, 225, 0.3);
    transition: all 0.3s ease;
}

.form-header:hover .header-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 6px 20px rgba(77, 208, 225, 0.4);
}

.form-header h3 {
    font-size: 1.75rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, #4dd0e1 0%, #0097a7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.form-header p {
    color: #6b7280;
    font-size: 1rem;
}

.modern-contact-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.modern-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    transition: all 0.3s ease;
}

.modern-input-wrapper:focus-within {
    transform: translateY(-2px);
}

.modern-input-wrapper:focus-within i {
    color: #0097a7;
    transform: scale(1.1);
}

.modern-input-wrapper i {
    position: absolute;
    left: 1rem;
    color: #6b7280;
    font-size: 1rem;
    z-index: 2;
    transition: all 0.3s ease;
}

.modern-input-wrapper input,
.modern-input-wrapper select,
.modern-input-wrapper textarea {
    width: 100%;
    padding: 1rem 1rem 1rem 3rem;
    border: 2px solid rgba(77, 208, 225, 0.3);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.8);
    font-size: 1rem;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
    position: relative;
    z-index: 1;
}

.modern-input-wrapper textarea {
    padding-left: 3rem;
    resize: vertical;
    min-height: 120px;
}

.modern-input-wrapper input:focus,
.modern-input-wrapper select:focus,
.modern-input-wrapper textarea:focus {
    outline: none;
    border-color: #0097a7;
    box-shadow: 0 0 0 3px rgba(77, 208, 225, 0.2);
    transform: translateY(-2px);
}

.modern-input-wrapper input:focus + .input-glow,
.modern-input-wrapper select:focus + .input-glow,
.modern-input-wrapper textarea:focus + .input-glow {
    opacity: 1;
    transform: scale(1.05);
}

.modern-input-wrapper input:focus ~ i,
.modern-input-wrapper select:focus ~ i,
.modern-input-wrapper textarea:focus ~ i {
    color: #0097a7;
    transform: scale(1.1);
}

.modern-input-wrapper input::placeholder,
.modern-input-wrapper textarea::placeholder {
    color: #9ca3af;
}

.input-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(77, 208, 225, 0.2), rgba(0, 151, 167, 0.2));
    border-radius: 12px;
    opacity: 0;
    transition: all 0.3s ease;
    pointer-events: none;
    z-index: 0;
}

.modern-form-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: 1rem;
}

.modern-submit-btn {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 2rem;
    background: linear-gradient(135deg, #4dd0e1 0%, #0097a7 100%);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
    animation: submit-btn-pulse 2s ease-in-out infinite;
}

@keyframes submit-btn-pulse {
    0%, 100% {
        box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
    }
    50% {
        box-shadow: 0 6px 20px rgba(102, 126, 234, 0.5);
    }
}

.modern-submit-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.modern-submit-btn:hover .btn-glow {
    opacity: 1;
    transform: scale(1.1);
}

.modern-submit-btn:hover .btn-text {
    transform: translateX(5px);
}

.modern-submit-btn:hover i {
    transform: translateX(5px) rotate(15deg);
}

.btn-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), transparent);
    opacity: 0;
    transition: all 0.3s ease;
    pointer-events: none;
}

.btn-text {
    transition: transform 0.3s ease;
}

.modern-submit-btn i {
    transition: all 0.3s ease;
}

.form-security-note {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #6b7280;
    font-size: 0.875rem;
}

.form-security-note i {
    color: #10b981;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.form-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.8s both;
}

.form-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.form-header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.form-header h3 {
    font-size: 1.75rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.form-header p {
    color: #6b7280;
    font-size: 1rem;
}

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.form-group label {
    font-size: 0.875rem;
    font-weight: 600;
    color: #374151;
}

.input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.input-wrapper i {
    position: absolute;
    left: 1rem;
    color: #6b7280;
    font-size: 1rem;
    z-index: 2;
}

.input-wrapper input,
.input-wrapper select,
.input-wrapper textarea {
    width: 100%;
    padding: 1rem 1rem 1rem 3rem;
    border: 1px solid rgba(37, 99, 235, 0.2);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.8);
    font-size: 1rem;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
}

.input-wrapper textarea {
    padding-left: 3rem;
    resize: vertical;
    min-height: 120px;
}

.input-wrapper input:focus,
.input-wrapper select:focus,
.input-wrapper textarea:focus {
    outline: none;
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
    transform: translateY(-2px);
}

.input-wrapper input::placeholder,
.input-wrapper textarea::placeholder {
    color: #9ca3af;
}

.form-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: 1rem;
}

.form-actions .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    border-radius: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
}

.form-actions .btn-primary {
    background: #2563eb;
    color: white;
    border: 2px solid #2563eb;
}

.form-actions .btn-secondary {
    background: transparent;
    color: #6b7280;
    border: 2px solid #d1d5db;
}

.form-actions .btn-primary:hover {
    background: #1d4ed8;
    border-color: #1d4ed8;
}

.form-actions .btn-secondary:hover {
    background: #f3f4f6;
    border-color: #9ca3af;
    color: #374151;
}

.form-note {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #6b7280;
    font-size: 0.875rem;
}

.form-note i {
    color: #10b981;
}

/* Contact Benefits */
.contact-benefits {
    z-index: 2;
    position: relative;
}

.contact-benefits .benefits-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 1.8s both;
}

.contact-benefits .benefits-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.contact-benefits .benefits-header p {
    color: #6b7280;
    font-size: 1.125rem;
}

.contact-benefits .benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.contact-benefits .benefit-item {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
}

.contact-benefits .benefit-item:nth-child(1) { animation-delay: 2s; }
.contact-benefits .benefit-item:nth-child(2) { animation-delay: 2.1s; }
.contact-benefits .benefit-item:nth-child(3) { animation-delay: 2.2s; }
.contact-benefits .benefit-item:nth-child(4) { animation-delay: 2.3s; }

.contact-benefits .benefit-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.contact-benefits .benefit-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s;
}

.contact-benefits .benefit-item:hover::before {
    left: 100%;
}

.contact-benefits .benefit-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.contact-benefits .benefit-item:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.contact-benefits .benefit-item h4 {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.contact-benefits .benefit-item p {
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
    font-size: 0.875rem;
}

/* ===== FOOTER ===== */
.footer {
    background: linear-gradient(135deg, #dbeafe 0%, #fef3c7 25%, #f5e6d3 50%, #e6d5c3 100%);
    color: #1e293b;
    padding: 4rem 0 2rem;
}

.footer-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

.footer-logo {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.footer-logo img {
    height: 120px;
    width: auto;
    transition: all 0.3s ease;
}

.footer-logo img:hover {
    transform: scale(1.05);
    filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.3));
}

.footer-section p {
    color: #475569;
    margin-bottom: 1.5rem;
}

.social-links {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.social-links a {
    min-width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: var(--transition);
    padding: 0 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.social-links a:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* LinkedIn */
.social-links a[href*="linkedin"] {
    color: #0077b5;
}

.social-links a[href*="linkedin"]:hover {
    background: #0077b5;
    color: white;
}

/* Facebook */
.social-links a[href*="facebook"] {
    color: #1877f2;
}

.social-links a[href*="facebook"]:hover {
    background: #1877f2;
    color: white;
}

/* Instagram */
.social-links a[href*="instagram"] {
    color: #e4405f;
}

.social-links a[href*="instagram"]:hover {
    background: #e4405f;
    color: white;
}

/* Twitter/X */
.social-links a[href*="twitter"] {
    color: #1da1f2;
}

.social-links a[href*="twitter"]:hover {
    background: #1da1f2;
    color: white;
}

/* WhatsApp */
.social-links a[href*="whatsapp"] {
    color: #25d366;
}

.social-links a[href*="whatsapp"]:hover {
    background: #25d366;
    color: white;
}

.footer-section h4 {
    margin-bottom: 1rem;
    color: #1e293b;
}

.footer-section ul {
    list-style: none;
}

.footer-section ul li {
    margin-bottom: 0.5rem;
}

.footer-section ul li a {
    color: #475569;
    text-decoration: none;
    transition: var(--transition);
}

.footer-section ul li a:hover {
    color: #1e293b;
}

.footer-section ul li i {
    margin-right: 0.5rem;
    color: var(--brand-blue);
}

.footer-bottom {
    border-top: 1px solid rgba(124, 45, 18, 0.1);
    padding-top: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.footer-bottom p {
    margin: 0;
    color: #475569;
}

.footer-links {
    display: flex;
    gap: 2rem;
}

.footer-links a {
    color: #475569;
    text-decoration: none;
    transition: var(--transition);
}

.footer-links a:hover {
    color: #1e293b;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 1024px) {
    .programme-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 1.5rem;
    }
    
    .programme-overview .overview-stats {
        gap: 2rem;
    }
    
    .programme-benefits .benefits-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 1.5rem;
    }
    .hero-content {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }
    
    .hero-title {
        font-size: 3rem;
    }
    
    .hero-visual {
        height: 500px;
    }
    
    .service-cards {
        position: relative;
        flex-direction: column;
        gap: 1rem;
        margin-top: 2rem;
        order: 2;
    }
    
    .service-1, .service-2, .service-3 {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
    }
    
    .trust-indicators {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        justify-content: center;
        margin-top: 2rem;
        order: 3;
    }
    
    .feature-card {
        order: 1;
    }
    
    .hero-stats {
        justify-content: center;
    }
    
    .about-content {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .initiator-content {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    

    
    .contact-content {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}

@media (max-width: 768px) {
    .nav-menu {
        position: fixed;
        top: 70px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 70px);
        background: white;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        padding: 0;
        transition: var(--transition);
        box-shadow: var(--shadow-lg);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        z-index: 1000;
        scrollbar-width: thin;
        scrollbar-color: #2563eb #f1f5f9;
        box-sizing: border-box;
        display: flex;
    }
    
    /* Custom scrollbar for webkit browsers */
    .nav-menu::-webkit-scrollbar {
        width: 6px;
    }
    
    .nav-menu::-webkit-scrollbar-track {
        background: #f1f5f9;
        border-radius: 3px;
    }
    
    .nav-menu::-webkit-scrollbar-thumb {
        background: #2563eb;
        border-radius: 3px;
    }
    
    .nav-menu::-webkit-scrollbar-thumb:hover {
        background: #1d4ed8;
    }
    
    /* Remove scroll hint - menu should show all content */
    
    .nav-menu.active {
        left: 0;
    }
    
    /* Add proper spacing for 768px breakpoint */
    .nav-menu {
        padding-top: 1rem;
        padding-bottom: 2rem;
    }
    
    .nav-toggle {
        display: flex;
    }
    
    .nav-toggle.active .bar:nth-child(1) {
        transform: rotate(-45deg) translate(-5px, 6px);
    }
    
    .nav-toggle.active .bar:nth-child(2) {
        opacity: 0;
    }
    
    .nav-toggle.active .bar:nth-child(3) {
        transform: rotate(45deg) translate(-5px, -6px);
    }
    
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-cta {
        justify-content: center;
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .services-grid {
        grid-template-columns: 1fr;
    }
    
    .facilities-grid {
        grid-template-columns: 1fr;
    }
    
    .testimonials-grid {
        grid-template-columns: 1fr;
    }
    
    .initiator-text h3 {
        font-size: 2rem;
    }
    
    .expertise-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .footer-content {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
    
    .footer-logo {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 1rem;
    }
    
    .footer-logo img {
        height: 120px;
        width: auto;
    }
    
    .social-links {
        justify-content: center;
        gap: 1rem;
    }
    
    .social-links a {
        min-width: 45px;
        height: 45px;
        padding: 0 6px;
        font-size: 1.2rem;
    }
    
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0 1rem;
    }
    
    .hero-title {
        font-size: 2rem;
    }
    
    .hero-subtitle {
        font-size: 1rem;
    }
    
    .hero-cta {
        flex-direction: column;
        align-items: center;
    }
    
    .stats-grid {
        grid-template-columns: 1fr;
    }
    
    .about-features {
        grid-template-columns: 1fr;
    }
    
    .expertise-grid {
        grid-template-columns: 1fr;
    }
    
    .testimonials-stats {
        grid-template-columns: 1fr;
    }
    
    .industry-stat {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    
    .progress-bar {
        width: 100%;
    }
    
    /* Footer mobile optimizations for small screens */
    .footer-logo img {
        height: 100px;
        width: auto;
    }
    
    .social-links a {
        min-width: 40px;
        height: 40px;
        font-size: 1.1rem;
    }
    
    .footer-section {
        padding: 0 1rem;
    }
    
    .footer-section h4 {
        font-size: 1.2rem;
        margin-bottom: 1rem;
    }
    
    .footer-section ul li {
        margin-bottom: 0.75rem;
        font-size: 0.95rem;
    }
    
    .footer-bottom {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
        padding: 1rem;
    }
    
    .footer-links {
        gap: 1rem;
        flex-wrap: wrap;
        justify-content: center;
    }
    

}

/* ===== ANIMATIONS ===== */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fade-in-up {
    animation: fadeInUp 0.6s ease-out;
}

/* ===== LOADING STATES ===== */
.loading {
    opacity: 0.6;
    pointer-events: none;
}

/* ===== SCROLL ANIMATIONS ===== */
.scroll-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.scroll-reveal.revealed {
    opacity: 1;
    transform: translateY(0);
} 

/* Programme card scroll reveal animations */
.programme-card.scroll-reveal {
    opacity: 0;
    transform: translateY(30px) scale(0.95);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.programme-card.scroll-reveal.revealed {
    opacity: 1;
    transform: translateY(0) scale(1);
}

/* Enhanced Button Hover Effects */
.btn-primary:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.3);
}

.btn-secondary:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 20px 40px rgba(255, 255, 255, 0.2);
}

/* Enhanced Stat Item Hover Effects */
.stat-item {
    position: relative;
    overflow: hidden;
}

.stat-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    transition: left 0.5s;
}

.stat-item:hover::before {
    left: 100%;
}

.stat-item:hover .stat-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(255, 215, 0, 0.3);
}

/* Enhanced Floating Elements */
.float-element {
    position: relative;
    overflow: hidden;
}

.float-element::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 215, 0, 0.2) 0%, transparent 70%);
    animation: rotate-glow 8s linear infinite;
}

/* Enhanced Trust Indicators */
.trust-item {
    position: relative;
    transition: all 0.3s ease;
}

.trust-item:hover {
    transform: translateY(-2px);
    color: white;
}

.trust-item:hover i {
    transform: scale(1.2);
    color: #ffed4e;
}

/* Enhanced Hero Badge */
.hero-badge {
    position: relative;
    overflow: hidden;
}

.hero-badge::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.2), transparent);
    transition: left 0.5s;
}

.hero-badge:hover::before {
    left: 100%;
}

/* Enhanced Card Glow */
.card-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(59, 130, 246, 0.05) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

/* Enhanced Scroll Indicator */
.scroll-arrow {
    position: relative;
    overflow: hidden;
}

.scroll-arrow::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.5s;
}

.scroll-arrow:hover::before {
    left: 100%;
}

/* Enhanced Particle Effects */
.particle {
    position: relative;
    overflow: hidden;
}

.particle::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.3) 0%, transparent 70%);
    animation: pulse-particle 3s ease-in-out infinite;
}

@keyframes pulse-particle {
    0%, 100% {
        transform: scale(1);
        opacity: 0.3;
    }
    50% {
        transform: scale(1.2);
        opacity: 0.8;
    }
}

/* Enhanced Shape Float Effects */
.shape-float {
    position: relative;
    overflow: hidden;
}

.shape-float::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    animation: shimmer 4s ease-in-out infinite;
}

@keyframes shimmer {
    0%, 100% {
        transform: translateX(-100%);
        opacity: 0;
    }
    50% {
        transform: translateX(100%);
        opacity: 1;
    }
}

/* Enhanced Gradient Text */
.gradient-text {
    background: linear-gradient(45deg, #ffd700, #ffed4e, #ffd700);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: gradient-shift 3s ease-in-out infinite;
}

@keyframes gradient-shift {
    0%, 100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

/* Enhanced Brand Highlight */
.brand-highlight {
    background: linear-gradient(45deg, #ffd700, #ffed4e, #ffd700);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: gradient-shift 3s ease-in-out infinite;
    position: relative;
}

.brand-highlight::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    transform: scaleX(0);
    transform-origin: left;
    animation: underline-grow 2s ease-out 1s forwards;
}

@keyframes underline-grow {
    to {
        transform: scaleX(1);
    }
}

/* Enhanced Counter Animation */
.counter {
    transition: all 0.3s ease;
}

.counter.animate {
    animation: counter-bounce 0.5s ease-out;
}

@keyframes counter-bounce {
    0% { transform: scale(1); }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); }
}

/* Enhanced Stat Icon Animation */
.stat-icon {
    transition: all 0.3s ease;
}

.stat-item:hover .stat-icon {
    animation: icon-bounce 0.6s ease-out;
}

@keyframes icon-bounce {
    0% { transform: scale(1) rotate(0deg); }
    25% { transform: scale(1.1) rotate(-5deg); }
    50% { transform: scale(1.2) rotate(5deg); }
    75% { transform: scale(1.1) rotate(-2deg); }
    100% { transform: scale(1.1) rotate(0deg); }
}

/* Enhanced Floating Element Animation */
.float-element {
    transition: all 0.3s ease;
}

.float-element:hover {
    transform: scale(1.2) rotate(15deg);
    box-shadow: 0 10px 25px rgba(255, 215, 0, 0.3);
}

/* Enhanced Hero Title Animation */
.hero-title {
    position: relative;
}

.hero-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 0;
    height: 3px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    animation: title-underline 2s ease-out 1.5s forwards;
}

@keyframes title-underline {
    to {
        width: 100%;
    }
}

/* Enhanced Hero Subtitle Animation */
.hero-subtitle {
    position: relative;
    overflow: hidden;
}

.hero-subtitle::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    animation: subtitle-shimmer 3s ease-in-out infinite;
}

@keyframes subtitle-shimmer {
    0%, 100% {
        left: -100%;
    }
    50% {
        left: 100%;
    }
} 

/* ===== RESPONSIVE STYLES FOR ABOUT SECTION ===== */
@media (max-width: 1024px) {
    .about-timeline {
        max-width: 600px;
    }
    
    .timeline-item:nth-child(odd) .timeline-content {
        margin-right: 2rem;
    }
    
    .timeline-item:nth-child(even) .timeline-content {
        margin-left: 2rem;
    }
    
    .company-stats {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
    
    .values-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .about {
        padding: 4rem 0;
    }
    
    .section-title {
        font-size: 2.5rem;
    }
    
    .about-timeline {
        max-width: 100%;
        margin: 3rem auto;
    }
    
    .about-timeline::before {
        left: 30px;
    }
    
    .timeline-item:nth-child(odd) .timeline-content,
    .timeline-item:nth-child(even) .timeline-content {
        margin-left: 4rem;
        margin-right: 0;
        text-align: left;
    }
    
    .timeline-marker {
        left: 30px;
        transform: none;
        z-index: 10;
    }
    
    .marker-icon {
        width: 50px;
        height: 50px;
        font-size: 1rem;
        z-index: 11;
    }
    
    .timeline-item:hover .marker-icon {
        transform: scale(1.1);
    }
    
    .company-stats {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .stat-card {
        padding: 1.5rem;
    }
    
    .stat-icon-wrapper {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .stat-info h3 {
        font-size: 2rem;
    }
    
    .mission-card {
        padding: 2rem;
    }
    
    .values-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .value-item {
        padding: 1.5rem;
    }
    
    .value-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
}

@media (max-width: 480px) {
    .section-title {
        font-size: 2rem;
    }
    
    .section-badge {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
    }
    
    .timeline-content {
        padding: 1.5rem;
    }
    
    .timeline-content h3 {
        font-size: 1.25rem;
    }
    
    .timeline-features {
        gap: 0.25rem;
    }
    
    .feature-tag {
        font-size: 0.625rem;
        padding: 0.125rem 0.5rem;
    }
    
    .stat-card {
        padding: 1rem;
    }
    
    .stat-icon-wrapper {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .stat-info h3 {
        font-size: 1.75rem;
    }
    
    .mission-card {
        padding: 1.5rem;
    }
    
    .card-header {
        flex-direction: column;
        text-align: center;
        gap: 0.5rem;
    }
    
    .card-header i {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
    
    .card-header h3 {
        font-size: 1.5rem;
    }
    
    .mission-features {
        gap: 0.75rem;
    }
    
    .value-item {
        padding: 1rem;
    }
    
    .value-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .value-item h4 {
        font-size: 1.125rem;
    }
} 

/* ===== RESPONSIVE STYLES FOR INITIATOR SECTION ===== */
@media (max-width: 1024px) {
    .profile-card {
        grid-template-columns: 1fr;
        gap: 2rem;
        text-align: center;
    }
    
    .founder-stats {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .expertise-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }
    
    .achievements-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .initiator {
        padding: 4rem 0;
    }
    
    .profile-card {
        padding: 2rem;
    }
    
    .founder-name {
        font-size: 2rem;
    }
    
    .founder-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .founder-stat {
        padding: 0.75rem;
    }
    
    .stat-number {
        font-size: 1.5rem;
        line-height: 1.2;
        overflow: visible;
    }
    
    .story-card {
        padding: 2rem;
    }
    
    .story-header {
        flex-direction: column;
        text-align: center;
        gap: 0.5rem;
    }
    
    .story-header i {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
    
    .story-header h3 {
        font-size: 1.5rem;
    }
    
    .story-paragraph {
        font-size: 1rem;
    }
    
    .expertise-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .expertise-card {
        padding: 1.5rem;
    }
    
    .expertise-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .expertise-card h4 {
        font-size: 1.125rem;
    }
    
    .achievements-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .achievement-item {
        padding: 1.5rem;
    }
    
    .achievement-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .achievement-content h4 {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .profile-card {
        padding: 1.5rem;
    }
    
    .founder-name {
        font-size: 1.75rem;
    }
    
    .founder-title {
        font-size: 1rem;
    }
    
    .founder-stats {
        gap: 0.75rem;
    }
    
    .founder-stat {
        padding: 0.5rem;
    }
    
    .stat-number {
        font-size: 1.25rem;
        line-height: 1.2;
        overflow: visible;
    }
    
    .stat-label {
        font-size: 0.75rem;
    }
    
    .story-card {
        padding: 1.5rem;
    }
    
    .story-header h3 {
        font-size: 1.25rem;
    }
    
    .story-paragraph {
        font-size: 0.875rem;
        margin-bottom: 1rem;
    }
    
    .expertise-header h3 {
        font-size: 1.5rem;
    }
    
    .expertise-header p {
        font-size: 1rem;
    }
    
    .expertise-card {
        padding: 1rem;
    }
    
    .expertise-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .expertise-card h4 {
        font-size: 1rem;
    }
    
    .expertise-card p {
        font-size: 0.875rem;
    }
    
    .achievements-header h3 {
        font-size: 1.5rem;
    }
    
    .achievements-header p {
        font-size: 1rem;
    }
    
    .achievement-item {
        padding: 1rem;
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }
    
    .achievement-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
    
    .achievement-content h4 {
        font-size: 0.875rem;
    }
    
    .achievement-content p {
        font-size: 0.75rem;
    }
} 

/* ===== RESPONSIVE STYLES FOR SERVICES SECTION ===== */
@media (max-width: 1024px) {
    .services-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .overview-stats {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .service-benefits .benefits-grid {
        gap: 1.5rem !important;
        max-width: 800px;
    }
    
    .service-benefits .benefit-item {
        flex: 1 1 300px !important;
        max-width: 350px !important;
    }
}

@media (max-width: 768px) {
    .services {
        padding: 4rem 0;
    }
    
    .overview-card {
        padding: 2rem;
    }
    
    .overview-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .overview-card h3 {
        font-size: 1.5rem;
    }
    
    .overview-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .overview-stat {
        padding: 1rem;
    }
    
    .overview-stat .stat-number {
        font-size: 1.5rem;
    }
    
    .division-card {
        padding: 2rem;
    }
    
    .card-header {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }
    
    .service-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .card-content h3 {
        font-size: 1.5rem;
    }
    
    .division-description {
        font-size: 1rem;
    }
    
    .division-service {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }
    
    .service-icon-small {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
    
    .service-content h4 {
        font-size: 1rem;
    }
    
    .service-content p {
        font-size: 0.875rem;
    }
    
    .service-benefits .benefits-grid {
        gap: 1.5rem !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    
    .service-benefits .benefit-item {
        flex: 1 1 100% !important;
        max-width: 400px !important;
    }
    
    .benefit-item {
        padding: 2rem 1.5rem;
    }
    
    .benefit-icon {
        width: 70px;
        height: 70px;
        font-size: 1.75rem;
    }
    
    .benefit-item h4 {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .overview-card {
        padding: 1.5rem;
    }
    
    .overview-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .overview-card h3 {
        font-size: 1.25rem;
    }
    
    .overview-card p {
        font-size: 1rem;
    }
    
    .overview-stat {
        padding: 0.75rem;
    }
    
    .overview-stat .stat-number {
        font-size: 1.25rem;
    }
    
    .overview-stat .stat-label {
        font-size: 0.75rem;
    }
    
    .division-card {
        padding: 1.5rem;
    }
    
    .card-content h3 {
        font-size: 1.25rem;
    }
    
    .division-description {
        font-size: 0.875rem;
    }
    
    .division-service {
        padding: 1rem;
    }
    
    .service-icon-small {
        width: 35px;
        height: 35px;
        font-size: 0.875rem;
    }
    
    .service-content h4 {
        font-size: 0.875rem;
    }
    
    .service-content p {
        font-size: 0.75rem;
    }
    
    .feature-tag {
        font-size: 0.625rem;
        padding: 0.125rem 0.5rem;
    }
    
    .benefit-item {
        padding: 1rem;
    }
    
    .benefit-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .benefit-item h4 {
        font-size: 0.875rem;
    }
    
    .benefit-item p {
        font-size: 0.75rem;
    }
}

/* ===== PROGRAMME SECTION ===== */
.programme {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    overflow: hidden;
    z-index: 1;
}

.programme-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    pointer-events: none;
}

.programme-particles {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0;
    pointer-events: none;
}

.programme-particle {
    position: absolute;
    width: 6px;
    height: 6px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    opacity: 0.3;
    animation: float-programme-particle 8s infinite ease-in-out;
}

.programme-particle-1 {
    top: 20%;
    left: 10%;
    animation-delay: 0s;
}

.programme-particle-2 {
    top: 60%;
    right: 15%;
    animation-delay: 2s;
}

.programme-particle-3 {
    bottom: 30%;
    left: 20%;
    animation-delay: 4s;
}

@keyframes float-programme-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
        opacity: 0.6;
    }
}

.programme-shapes {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0;
    pointer-events: none;
}

.programme-shape {
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    animation: float-programme-shape 12s infinite ease-in-out;
}

.programme-shape-1 {
    width: 120px;
    height: 120px;
    top: 10%;
    right: 10%;
    animation-delay: 0s;
}

.programme-shape-2 {
    width: 80px;
    height: 80px;
    bottom: 20%;
    left: 5%;
    animation-delay: 6s;
}

.programme-shape-3 {
    width: 60px;
    height: 60px;
    top: 50%;
    right: 20%;
    animation-delay: 3s;
}

.programme-shape-4 {
    width: 100px;
    height: 100px;
    bottom: 10%;
    right: 10%;
    animation-delay: 9s;
}

.programme-shape-5 {
    width: 40px;
    height: 40px;
    top: 30%;
    left: 15%;
    animation-delay: 12s;
}

@keyframes float-programme-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.1;
    }
    50% {
        transform: translateY(-30px) rotate(180deg);
        opacity: 0.3;
    }
}

/* Additional floating elements */
.programme-floating-elements {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.programme-float-element {
    position: absolute;
    width: 4px;
    height: 4px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    opacity: 0.4;
    animation: float-programme-element 10s infinite ease-in-out;
}

.programme-float-element-1 {
    top: 15%;
    left: 25%;
    animation-delay: 0s;
}

.programme-float-element-2 {
    top: 45%;
    right: 30%;
    animation-delay: 2s;
}

.programme-float-element-3 {
    bottom: 35%;
    left: 40%;
    animation-delay: 4s;
}

.programme-float-element-4 {
    top: 70%;
    right: 15%;
    animation-delay: 6s;
}

.programme-float-element-5 {
    top: 25%;
    right: 45%;
    animation-delay: 8s;
}

.programme-float-element-6 {
    bottom: 60%;
    left: 10%;
    animation-delay: 10s;
}

@keyframes float-programme-element {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-15px) scale(1.2);
        opacity: 0.8;
    }
}

/* Animated gradient background */
.programme-gradient-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, 
        rgba(37, 99, 235, 0.05) 0%, 
        rgba(118, 75, 162, 0.05) 25%, 
        rgba(37, 99, 235, 0.03) 50%, 
        rgba(118, 75, 162, 0.05) 75%, 
        rgba(37, 99, 235, 0.05) 100%);
    animation: programme-gradient-shift 20s infinite ease-in-out;
    z-index: 0;
    pointer-events: none;
}

@keyframes programme-gradient-shift {
    0%, 100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

/* Animated grid pattern */
.programme-grid-pattern {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        linear-gradient(rgba(37, 99, 235, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(37, 99, 235, 0.03) 1px, transparent 1px);
    background-size: 50px 50px;
    animation: programme-grid-move 30s infinite linear;
    z-index: 0;
    pointer-events: none;
}

@keyframes programme-grid-move {
    0% {
        transform: translate(0, 0);
    }
    100% {
        transform: translate(50px, 50px);
    }
}

/* Pulsing circles */
.programme-pulse-circle {
    position: absolute;
    border-radius: 50%;
    border: 2px solid rgba(37, 99, 235, 0.2);
    animation: programme-pulse 4s infinite ease-in-out;
    z-index: 0;
    pointer-events: none;
}

.programme-pulse-circle-1 {
    width: 120px;
    height: 120px;
    top: 10%;
    left: 10%;
    animation-delay: 0s;
}

.programme-pulse-circle-2 {
    width: 80px;
    height: 80px;
    bottom: 15%;
    right: 20%;
    animation-delay: 2s;
}

.programme-pulse-circle-3 {
    width: 60px;
    height: 60px;
    top: 60%;
    left: 5%;
    animation-delay: 4s;
}

@keyframes programme-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.2;
    }
    50% {
        transform: scale(1.1);
        opacity: 0.4;
    }
}

/* Animated lines */
.programme-animated-line {
    position: absolute;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.3), transparent);
    animation: programme-line-flow 8s infinite linear;
    z-index: 0;
    pointer-events: none;
}

.programme-line-1 {
    width: 200px;
    top: 20%;
    left: -200px;
    animation-delay: 0s;
}

.programme-line-2 {
    width: 150px;
    top: 70%;
    right: -150px;
    animation-delay: 4s;
}

.programme-line-3 {
    width: 180px;
    bottom: 30%;
    left: -180px;
    animation-delay: 2s;
}

@keyframes programme-line-flow {
    0% {
        transform: translateX(0);
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: translateX(calc(100vw + 200px));
        opacity: 0;
    }
}

/* Additional moving balls */
.programme-moving-ball {
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    opacity: 0.3;
    animation: programme-ball-move 15s infinite linear;
    z-index: 0;
    pointer-events: none;
}

.programme-ball-1 {
    width: 12px;
    height: 12px;
    top: 15%;
    left: 5%;
    animation-delay: 0s;
    animation-duration: 20s;
}

.programme-ball-2 {
    width: 8px;
    height: 8px;
    top: 75%;
    right: 10%;
    animation-delay: 3s;
    animation-duration: 18s;
}

.programme-ball-3 {
    width: 15px;
    height: 15px;
    bottom: 25%;
    left: 20%;
    animation-delay: 6s;
    animation-duration: 25s;
}

.programme-ball-4 {
    width: 10px;
    height: 10px;
    top: 35%;
    right: 25%;
    animation-delay: 9s;
    animation-duration: 22s;
}

.programme-ball-5 {
    width: 6px;
    height: 6px;
    bottom: 45%;
    left: 35%;
    animation-delay: 12s;
    animation-duration: 16s;
}

.programme-ball-6 {
    width: 14px;
    height: 14px;
    top: 85%;
    right: 40%;
    animation-delay: 15s;
    animation-duration: 28s;
}

@keyframes programme-ball-move {
    0% {
        transform: translate(0, 0) rotate(0deg);
        opacity: 0.3;
    }
    25% {
        transform: translate(100px, -50px) rotate(90deg);
        opacity: 0.6;
    }
    50% {
        transform: translate(200px, 0px) rotate(180deg);
        opacity: 0.3;
    }
    75% {
        transform: translate(100px, 50px) rotate(270deg);
        opacity: 0.6;
    }
    100% {
        transform: translate(0, 0) rotate(360deg);
        opacity: 0.3;
    }
}

/* Rotating squares */
.programme-rotating-square {
    position: absolute;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.2) 0%, rgba(118, 75, 162, 0.2) 100%);
    border-radius: 8px;
    animation: programme-square-rotate 12s infinite linear;
    z-index: 0;
    pointer-events: none;
}

.programme-square-1 {
    width: 40px;
    height: 40px;
    top: 10%;
    right: 15%;
    animation-delay: 0s;
    animation-duration: 15s;
}

.programme-square-2 {
    width: 25px;
    height: 25px;
    bottom: 20%;
    left: 10%;
    animation-delay: 4s;
    animation-duration: 18s;
}

.programme-square-3 {
    width: 35px;
    height: 35px;
    top: 60%;
    right: 35%;
    animation-delay: 8s;
    animation-duration: 20s;
}

.programme-square-4 {
    width: 20px;
    height: 20px;
    bottom: 70%;
    left: 45%;
    animation-delay: 12s;
    animation-duration: 14s;
}

.programme-square-5 {
    width: 30px;
    height: 30px;
    top: 25%;
    left: 25%;
    animation-delay: 16s;
    animation-duration: 22s;
}

@keyframes programme-square-rotate {
    0% {
        transform: rotate(0deg) scale(1);
        opacity: 0.2;
    }
    25% {
        transform: rotate(90deg) scale(1.1);
        opacity: 0.4;
    }
    50% {
        transform: rotate(180deg) scale(1);
        opacity: 0.2;
    }
    75% {
        transform: rotate(270deg) scale(1.1);
        opacity: 0.4;
    }
    100% {
        transform: rotate(360deg) scale(1);
        opacity: 0.2;
    }
}

/* Bouncing balls */
.programme-bouncing-ball {
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    opacity: 0.4;
    animation: programme-ball-bounce 8s infinite ease-in-out;
    z-index: 0;
    pointer-events: none;
}

.programme-bounce-1 {
    width: 16px;
    height: 16px;
    top: 20%;
    left: 60%;
    animation-delay: 0s;
    animation-duration: 10s;
}

.programme-bounce-2 {
    width: 12px;
    height: 12px;
    bottom: 30%;
    right: 20%;
    animation-delay: 2s;
    animation-duration: 12s;
}

.programme-bounce-3 {
    width: 20px;
    height: 20px;
    top: 80%;
    left: 15%;
    animation-delay: 4s;
    animation-duration: 9s;
}

.programme-bounce-4 {
    width: 14px;
    height: 14px;
    bottom: 60%;
    right: 45%;
    animation-delay: 6s;
    animation-duration: 11s;
}

@keyframes programme-ball-bounce {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.4;
    }
    25% {
        transform: translateY(-30px) scale(1.1);
        opacity: 0.7;
    }
    50% {
        transform: translateY(-60px) scale(1.2);
        opacity: 0.9;
    }
    75% {
        transform: translateY(-30px) scale(1.1);
        opacity: 0.7;
    }
}

/* Floating diamonds */
.programme-diamond {
    position: absolute;
    width: 20px;
    height: 20px;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.3) 0%, rgba(118, 75, 162, 0.3) 100%);
    transform: rotate(45deg);
    animation: programme-diamond-float 10s infinite ease-in-out;
    z-index: 0;
    pointer-events: none;
}

.programme-diamond-1 {
    top: 40%;
    left: 8%;
    animation-delay: 0s;
    animation-duration: 12s;
}

.programme-diamond-2 {
    bottom: 25%;
    right: 12%;
    animation-delay: 3s;
    animation-duration: 15s;
}

.programme-diamond-3 {
    top: 70%;
    left: 35%;
    animation-delay: 6s;
    animation-duration: 18s;
}

.programme-diamond-4 {
    bottom: 50%;
    right: 30%;
    animation-delay: 9s;
    animation-duration: 14s;
}

@keyframes programme-diamond-float {
    0%, 100% {
        transform: rotate(45deg) translateY(0px) scale(1);
        opacity: 0.3;
    }
    50% {
        transform: rotate(45deg) translateY(-25px) scale(1.2);
        opacity: 0.6;
    }
}

.programme-overview {
    margin-bottom: 4rem;
    position: relative;
    z-index: 1;
}

.programme-overview .overview-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.95) 100%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: var(--radius-xl);
    padding: 3rem;
    text-align: center;
    box-shadow: var(--shadow-lg);
    border: 1px solid rgba(37, 99, 235, 0.1);
    position: relative;
    overflow: hidden;
    transition: var(--transition);
}

.programme-overview .overview-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%);
    opacity: 0;
    transition: var(--transition);
    z-index: -1;
}

.programme-overview .overview-card:hover::before {
    opacity: 1;
}

.programme-overview .overview-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    box-shadow: var(--shadow-lg);
    transition: var(--transition);
}

.programme-overview .overview-card:hover .overview-icon {
    transform: scale(1.1) rotate(5deg);
}

/* Overview card animations */
.programme-overview .overview-card {
    animation: programme-overview-entrance 1s ease-out forwards;
    opacity: 0;
    transform: translateY(20px);
}

@keyframes programme-overview-entrance {
    0% {
        opacity: 0;
        transform: translateY(20px) scale(0.98);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Stats animation */
.programme-overview .overview-stat {
    animation: programme-stat-entrance 0.6s ease-out forwards;
    opacity: 0;
    transform: translateY(15px);
}

.programme-overview .overview-stat:nth-child(1) { animation-delay: 1.2s; }
.programme-overview .overview-stat:nth-child(2) { animation-delay: 1.4s; }
.programme-overview .overview-stat:nth-child(3) { animation-delay: 1.6s; }

@keyframes programme-stat-entrance {
    0% {
        opacity: 0;
        transform: translateY(15px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.programme-overview .overview-card h3 {
    font-size: 2rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.programme-overview .overview-card p {
    font-size: 1.125rem;
    color: var(--text-secondary);
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.programme-overview .overview-stats {
    display: flex;
    justify-content: center;
    gap: 3rem;
    flex-wrap: wrap;
}

.programme-overview .overview-stat {
    text-align: center;
    padding: 1rem;
    border-radius: var(--radius-md);
    transition: var(--transition);
    cursor: pointer;
}

.programme-overview .overview-stat:hover {
    transform: translateY(-5px);
    background: rgba(37, 99, 235, 0.1);
}

.programme-overview .overview-stat .stat-number {
    display: block;
    font-size: 2.5rem;
    font-weight: 800;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 0.5rem;
    text-shadow: 0 0 20px rgba(59, 130, 246, 0.6), 0 0 10px rgba(99, 102, 241, 0.4);
    letter-spacing: -0.02em;
    position: relative;
}

.programme-overview .overview-stat .stat-label {
    font-size: 1rem;
    color: #6b7280;
    font-weight: 700;
}

.programme-month-section,
.job-month-section {
    margin-bottom: 4rem;
    position: relative;
    z-index: 1;
}

.month-header {
    text-align: center;
    margin-bottom: 3rem;
    position: relative;
}

.month-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 1rem;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: inline-block;
}

.month-divider {
    width: 100px;
    height: 3px;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    margin: 0 auto;
    border-radius: 2px;
    position: relative;
}

.month-divider::before,
.month-divider::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    transform: translateY(-50%);
}

.month-divider::before {
    left: -20px;
}

.month-divider::after {
    right: -20px;
}

.programme-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 2rem;
    margin-bottom: 2rem;
    position: relative;
    z-index: 1;
}

/* Ensure cards maintain consistent size even with few items */
.programme-grid:has(.programme-card:only-child) {
    grid-template-columns: minmax(350px, 400px);
    justify-content: center;
}

.programme-grid:has(.programme-card:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(350px, 400px));
    justify-content: center;
}

/* Mobile responsive fixes for programmes grid */
@media (max-width: 768px) {
    .programme-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 0 1rem;
    }
    
    .programme-grid:has(.programme-card:nth-child(2):last-child) {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        justify-content: stretch;
    }
    
    .programme-grid:has(.programme-card:only-child) {
        grid-template-columns: 1fr;
        max-width: 100%;
    }
    
    .programme-card {
        min-height: auto;
        max-width: 100%;
        padding: 1.5rem;
        margin: 0 auto;
    }
    
    .programme-footer {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .programme-pricing-section {
        width: 100%;
    }
    
    .special-offer-container,
    .standard-pricing {
        width: 100%;
    }
    
    .price-amounts {
        flex-direction: column;
        align-items: center;
        gap: 0.5rem;
    }
    
    /* Ensure proper spacing on mobile */
    .programme-content {
        margin-bottom: 1rem;
    }
    
    .programme-details {
        gap: 0.75rem;
    }
    
    .detail-item {
        font-size: 0.9rem;
    }
    
    .programme-modules {
        margin-top: 1rem;
    }
    
    .module-list {
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .programme-grid:has(.programme-card:nth-child(2):last-child) {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .programme-card {
        padding: 1rem;
        min-height: auto;
    }
    
    .programme-footer {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .programme-price {
        text-align: center;
        margin-top: 0.75rem;
    }
    
    .price-discounted .savings-badge {
        font-size: 0.7rem;
        padding: 0.2rem 0.6rem;
    }
    
    .price-amounts {
        gap: 0.25rem;
    }
    
    /* Extra small screen optimizations */
    .programme-content h3 {
        font-size: 1.1rem;
    }
    
    .programme-description {
        font-size: 0.9rem;
    }
    
    .programme-details {
        gap: 0.5rem;
    }
    
    .detail-item {
        font-size: 0.8rem;
    }
    
    .programme-modules h4 {
        font-size: 0.9rem;
    }
    
    .module-item {
        font-size: 0.8rem;
    }
    
    .btn {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
}

.programme-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: var(--radius-xl);
    padding: 2rem;
    box-shadow: var(--shadow-lg);
    border: 1px solid rgba(37, 99, 235, 0.15);
    position: relative;
    overflow: visible;
    transition: var(--transition);
    display: flex;
    flex-direction: column;
    min-height: 600px;
    width: 100%;
    max-width: 450px;
}

.programme-card:nth-child(1) { animation-delay: 0.6s; }
.programme-card:nth-child(2) { animation-delay: 0.8s; }
.programme-card:nth-child(3) { animation-delay: 1s; }
.programme-card:nth-child(4) { animation-delay: 1.2s; }

.programme-card:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow: 0 25px 50px rgba(37, 99, 235, 0.2);
}

/* Card entrance animations - only apply when not using scroll reveal */
.programme-card:not(.scroll-reveal) {
    animation: programme-card-entrance 0.8s ease-out forwards;
    opacity: 0;
    transform: translateY(30px) scale(0.95);
}

.programme-card:not(.scroll-reveal):nth-child(1) { 
    animation-delay: 0.6s; 
}
.programme-card:not(.scroll-reveal):nth-child(2) { 
    animation-delay: 0.8s; 
}
.programme-card:not(.scroll-reveal):nth-child(3) { 
    animation-delay: 1s; 
}
.programme-card:not(.scroll-reveal):nth-child(4) { 
    animation-delay: 1.2s; 
}

@keyframes programme-card-entrance {
    0% {
        opacity: 0;
        transform: translateY(30px) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes programme-card-float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-8px);
    }
}

/* Programme icon animations */
.programme-icon {
    animation: programme-icon-float 3s ease-in-out infinite;
}

.programme-card:hover .programme-icon {
    animation: programme-icon-pulse 0.6s ease-in-out;
}

@keyframes programme-icon-float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-5px);
    }
}

@keyframes programme-icon-pulse {
    0% {
        transform: scale(1) rotate(0deg);
    }
    50% {
        transform: scale(1.2) rotate(5deg);
    }
    100% {
        transform: scale(1.1) rotate(0deg);
    }
}

.programme-glow {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    opacity: 0;
    transition: var(--transition);
    z-index: -1;
    pointer-events: none;
}

.programme-card:hover .programme-glow {
    opacity: 1;
}

.programme-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.programme-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    animation: programme-icon-float 3s ease-in-out infinite;
    position: relative;
    z-index: 2;
}

.programme-card:hover .programme-icon {
    animation: programme-icon-pulse 0.6s ease-in-out;
    transform: scale(1.05);
}

.programme-icon i {
    font-size: 1.5rem;
    color: white;
    display: block;
    text-align: center;
    line-height: 1;
}

.programme-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: white;
    border-radius: var(--radius-md);
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: var(--shadow-sm);
}

.programme-badge i {
    font-size: 0.75rem;
}

.programme-content h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.programme-description {
    font-size: 1rem;
    color: #4b5563;
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.programme-details {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.detail-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.detail-item i {
    color: var(--brand-blue);
    font-size: 1rem;
}

.programme-modules {
    margin-bottom: 2rem;
}

.programme-modules h4 {
    font-size: 1.125rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.module-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.module-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.module-item i {
    color: #10b981;
    font-size: 1rem;
}

.programme-content {
    flex: 1;
    margin-bottom: 2rem;
}

.programme-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-top: auto;
    pointer-events: auto !important;
    position: relative;
    z-index: 50;
}

.programme-footer .btn {
    flex: 2;
    max-width: 250px;
    min-width: 150px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    text-decoration: none;
    font-weight: 600;
    padding: 12px 24px;
    border-radius: 8px;
    transition: all 0.3s ease;
    position: relative;
    z-index: 10;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%) !important;
    color: white !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.programme-price {
    text-align: right;
}

.price-label {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
}

.price-amount {
    display: block;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--brand-blue);
}

/* Enhanced Pricing Section Styles */
.programme-footer {
    margin-top: auto;
    padding: 1rem 0;
}

.programme-pricing-section {
    width: 100%;
}

/* Special Offer Container */
.special-offer-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, #fef2f2 0%, #fef7f0 100%);
    border: 2px solid #fecaca;
    border-radius: 12px;
    position: relative;
    overflow: hidden;
    animation: specialOfferGlow 2s ease-in-out infinite alternate;
}

@keyframes specialOfferGlow {
    0% {
        box-shadow: 0 4px 20px rgba(220, 38, 38, 0.1);
    }
    100% {
        box-shadow: 0 8px 30px rgba(220, 38, 38, 0.2);
    }
}

.special-offer-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #dc2626, #ea580c);
}

/* Standard Pricing */
.standard-pricing {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, #f0f9ff 0%, #f0fdf4 100%);
    border: 2px solid #bae6fd;
    border-radius: 12px;
}

/* Pricing Display */
.pricing-display {
    text-align: center;
}

.pricing-display .price-label {
    color: #dc2626;
    font-weight: 700;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 0.5rem;
    display: block;
}

.standard-pricing .pricing-display .price-label {
    color: #2563eb;
}

/* Price Amounts */
.price-amounts {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    margin: 0.75rem 0;
}

.price-amounts .original-price {
    font-size: 1rem;
    color: #9ca3af;
    text-decoration: line-through;
    font-weight: 500;
    opacity: 0.8;
}

.price-amounts .discounted-price {
    font-size: 1.75rem;
    font-weight: 800;
    color: #dc2626;
    line-height: 1;
}

.standard-pricing .price-amount {
    font-size: 1.75rem;
    font-weight: 800;
    color: #2563eb;
    line-height: 1;
}

/* Savings Badge */
.savings-badge {
    background: linear-gradient(135deg, #dc2626, #ea580c);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 25px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.3);
    transition: all 0.3s ease;
    animation: savingsPulse 2s ease-in-out infinite;
}

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

.savings-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(220, 38, 38, 0.4);
}

/* Enhanced Buttons */
.btn-special-offer {
    background: linear-gradient(135deg, #dc2626 0%, #ea580c 100%);
    color: white;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.3);
    border: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.btn-special-offer::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.btn-special-offer:hover::before {
    left: 100%;
}

.btn-special-offer:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 38, 38, 0.4);
}

.btn-primary {
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    color: white;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
    border: none;
    cursor: pointer;
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.4);
}

/* Mobile Responsive Design */
@media (max-width: 768px) {
    .special-offer-container,
    .standard-pricing {
        padding: 1rem;
        gap: 0.75rem;
        width: 100%;
    }
    
    .price-amounts .discounted-price,
    .standard-pricing .price-amount {
        font-size: 1.5rem;
    }
    
    .price-amounts .original-price {
        font-size: 0.9rem;
    }
    
    .savings-badge {
        padding: 0.4rem 0.8rem;
        font-size: 0.7rem;
    }
    
    .btn-special-offer,
    .btn-primary {
        padding: 12px 24px;
        font-size: 0.9rem;
        width: 100%;
        justify-content: center;
        min-height: 48px; /* Touch-friendly minimum height */
    }
    
    /* Ensure proper spacing on mobile */
    .programme-content {
        margin-bottom: 1rem;
    }
    
    .programme-details {
        gap: 0.75rem;
    }
    
    .detail-item {
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .programme-grid {
        gap: 1rem;
        padding: 0 0.5rem;
    }
    
    .special-offer-container,
    .standard-pricing {
        padding: 0.75rem;
        gap: 0.5rem;
        width: 100%;
    }
    
    .price-amounts .discounted-price,
    .standard-pricing .price-amount {
        font-size: 1.4rem;
    }
    
    .price-amounts .original-price {
        font-size: 0.85rem;
    }
    
    .savings-badge {
        padding: 0.35rem 0.7rem;
        font-size: 0.65rem;
    }
    
    .btn-special-offer,
    .btn-primary {
        padding: 10px 20px;
        font-size: 0.85rem;
        min-height: 44px; /* Touch-friendly for very small screens */
    }
    
    .pricing-display .price-label {
        font-size: 0.7rem;
    }
    
    /* Optimize spacing for very small screens */
    .programme-card {
        padding: 1rem;
    }
    
    .programme-content h3 {
        font-size: 1.1rem;
    }
    
    .programme-description {
        font-size: 0.9rem;
    }
}

/* New dual pricing styles */
.price-discounted {
    text-align: center;
}

.price-discounted .price-label {
    color: #dc2626;
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.price-discounted .price-amounts {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    margin: 0.5rem 0;
}

/* Mobile responsive pricing */
@media (max-width: 768px) {
    .price-discounted .price-amounts {
        gap: 0.5rem;
        margin: 0.75rem 0;
    }
    
    .price-discounted .original-price {
        font-size: 0.9rem;
    }
    
    .price-discounted .discounted-price {
        font-size: 1.3rem;
    }
    
    .price-discounted .savings-badge {
        font-size: 0.7rem;
        padding: 0.2rem 0.6rem;
    }
}

@media (max-width: 480px) {
    .price-discounted .price-amounts {
        gap: 0.25rem;
        margin: 0.5rem 0;
    }
    
    .price-discounted .original-price {
        font-size: 0.85rem;
    }
    
    .price-discounted .discounted-price {
        font-size: 1.2rem;
    }
    
    .price-discounted .savings-badge {
        font-size: 0.65rem;
        padding: 0.15rem 0.5rem;
    }
}

.price-discounted .original-price {
    font-size: 1rem;
    color: var(--text-light);
    text-decoration: line-through;
    font-weight: 500;
    position: relative;
    opacity: 0.7;
}

.price-discounted .original-price::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--text-light);
    transform: translateY(-50%);
    opacity: 0.8;
    border-radius: 1px;
}

.price-discounted .discounted-price {
    font-size: 1.5rem;
    font-weight: 700;
    color: #dc2626;
}

.price-discounted .savings-badge {
    background: #dc2626;
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(220, 38, 38, 0.2);
}

.price-discounted .savings-badge:hover {
    background: #b91c1c;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(220, 38, 38, 0.3);
}



.programme-benefits {
    margin-bottom: 4rem;
    position: relative;
    z-index: 1;
}

.programme-benefits .benefits-header {
    text-align: center;
    margin-bottom: 3rem;
}

.programme-benefits .benefits-header h3 {
    font-size: 2rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.programme-benefits .benefits-header p {
    font-size: 1.125rem;
    color: var(--text-secondary);
    max-width: 600px;
    margin: 0 auto;
}

.programme-benefits .benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.programme-benefits .benefit-item {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.95) 100%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: var(--radius-lg);
    padding: 2rem;
    text-align: center;
    box-shadow: var(--shadow-md);
    border: 1px solid rgba(37, 99, 235, 0.1);
    position: relative;
    overflow: hidden;
    transition: var(--transition);
}

.programme-benefits .benefit-item:nth-child(1) { animation-delay: 1.7s; }
.programme-benefits .benefit-item:nth-child(2) { animation-delay: 1.8s; }
.programme-benefits .benefit-item:nth-child(3) { animation-delay: 1.9s; }
.programme-benefits .benefit-item:nth-child(4) { animation-delay: 2s; }

.programme-benefits .benefit-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.15);
}

.programme-benefits .benefit-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%);
    opacity: 0;
    transition: var(--transition);
    z-index: -1;
}

.programme-benefits .benefit-item:hover::before {
    opacity: 1;
}

.programme-benefits .benefit-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
}

.programme-benefits .benefit-item:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
}

/* Benefits section animations */
.programme-benefits .benefit-item {
    animation: programme-benefit-entrance 0.8s ease-out forwards;
    opacity: 0;
    transform: translateY(25px);
}

.programme-benefits .benefit-item:nth-child(1) { animation-delay: 1.7s; }
.programme-benefits .benefit-item:nth-child(2) { animation-delay: 1.8s; }
.programme-benefits .benefit-item:nth-child(3) { animation-delay: 1.9s; }
.programme-benefits .benefit-item:nth-child(4) { animation-delay: 2s; }

@keyframes programme-benefit-entrance {
    0% {
        opacity: 0;
        transform: translateY(25px) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* CTA animations */
.programme-cta {
    animation: programme-cta-entrance 1.2s ease-out forwards;
    opacity: 0;
    transform: translateY(30px);
}

@keyframes programme-cta-entrance {
    0% {
        opacity: 0;
        transform: translateY(30px) scale(0.98);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Button hover animations */
.programme-footer .btn {
    transition: all 0.3s ease;
    position: relative;
    overflow: visible;
}

.programme-footer .btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.programme-footer .btn:hover::before {
    left: 100%;
}

.programme-footer .btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.programme-benefits .benefit-icon i {
    font-size: 1.5rem;
    color: white;
}

.programme-benefits .benefit-item h4 {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.programme-benefits .benefit-item p {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.programme-cta {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.98) 100%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: var(--radius-xl);
    padding: 3rem;
    text-align: center;
    box-shadow: var(--shadow-lg);
    border: 1px solid rgba(37, 99, 235, 0.1);
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.cta-glow {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%);
    opacity: 0;
    transition: var(--transition);
    z-index: -1;
}

.programme-cta:hover .cta-glow {
    opacity: 1;
}

.cta-content h3 {
    font-size: 2rem;
    margin-bottom: 1rem;
    color: var(--text-primary);
}

.cta-content p {
    font-size: 1.125rem;
    color: var(--text-secondary);
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.cta-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.cta-buttons .btn {
    min-width: 200px;
}

.cta-buttons .btn-primary {
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    color: white;
    box-shadow: var(--shadow-md);
}

.cta-buttons .btn-outline {
    background: transparent;
    color: var(--brand-blue);
    border: 2px solid var(--brand-blue);
}

.cta-buttons .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.3);
}

/* ===== FACILITIES SECTION ===== */
.facilities {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #e0f7fa 0%, #e8eaf6 25%, #d1c4e9 50%, #f5f5f5 100%);
    overflow: hidden;
}

/* Enhanced Background Elements */
.facilities-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* Floating Equipment Shapes */
.facilities-equipment-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.equipment-shape {
    position: absolute;
    background: linear-gradient(135deg, rgba(224, 247, 250, 0.8), rgba(232, 234, 246, 0.8));
    border: 2px solid rgba(209, 196, 233, 0.3);
    animation: equipment-shape-float 14s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(209, 196, 233, 0.2);
    transition: all 0.3s ease;
}

.equipment-shape:hover {
    transform: scale(1.1);
    box-shadow: 0 8px 25px rgba(209, 196, 233, 0.4);
}

.equipment-shape-computer {
    width: 60px;
    height: 45px;
    top: 10%;
    left: 15%;
    border-radius: 8px;
    animation-delay: 0s;
}

.equipment-shape-projector {
    width: 50px;
    height: 50px;
    top: 35%;
    right: 12%;
    border-radius: 50%;
    animation-delay: 3s;
}

.equipment-shape-desk {
    width: 80px;
    height: 40px;
    bottom: 20%;
    left: 25%;
    border-radius: 20px;
    animation-delay: 6s;
}

.equipment-shape-chair {
    width: 45px;
    height: 55px;
    top: 70%;
    right: 20%;
    border-radius: 22px;
    animation-delay: 9s;
}

.equipment-shape-screen {
    width: 70px;
    height: 50px;
    bottom: 30%;
    right: 25%;
    border-radius: 10px;
    animation-delay: 12s;
}

@keyframes equipment-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-20px) rotate(5deg);
        opacity: 1;
    }
}

/* Technology Infrastructure Elements */
.facilities-tech-infrastructure {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.tech-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(5, 150, 105, 0.08));
    border: 2px solid rgba(16, 185, 129, 0.2);
    animation: tech-element-float 16s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.1);
}

.tech-element-network {
    width: 40px;
    height: 40px;
    top: 20%;
    left: 45%;
    border-radius: 50%;
    animation-delay: 0s;
}

.tech-element-wifi {
    width: 55px;
    height: 35px;
    top: 50%;
    right: 35%;
    border-radius: 17px;
    animation-delay: 4s;
}

.tech-element-power {
    width: 45px;
    height: 45px;
    bottom: 25%;
    left: 35%;
    transform: rotate(45deg);
    animation-delay: 8s;
}

.tech-element-connectivity {
    width: 50px;
    height: 50px;
    top: 80%;
    right: 18%;
    border-radius: 50%;
    animation-delay: 12s;
}

@keyframes tech-element-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-18px) rotate(8deg);
        opacity: 0.8;
    }
}

/* Modern Workspace Shapes */
.facilities-workspace-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.workspace-shape {
    position: absolute;
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.08), rgba(147, 51, 234, 0.08));
    border: 2px solid rgba(168, 85, 247, 0.2);
    animation: workspace-shape-float 18s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(168, 85, 247, 0.1);
}

.workspace-shape-meeting {
    width: 75px;
    height: 55px;
    top: 15%;
    left: 60%;
    border-radius: 15px;
    animation-delay: 0s;
}

.workspace-shape-training {
    width: 65px;
    height: 65px;
    top: 45%;
    right: 45%;
    border-radius: 50%;
    animation-delay: 4s;
}

.workspace-shape-lounge {
    width: 60px;
    height: 40px;
    bottom: 35%;
    left: 40%;
    border-radius: 20px;
    animation-delay: 8s;
}

.workspace-shape-reception {
    width: 70px;
    height: 50px;
    top: 75%;
    right: 28%;
    border-radius: 12px;
    animation-delay: 12s;
}

@keyframes workspace-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-22px) rotate(6deg);
        opacity: 0.8;
    }
}

/* Professional Environment Indicators */
.facilities-environment-indicators {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.environment-indicator {
    position: absolute;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.08), rgba(217, 119, 6, 0.08));
    border: 2px solid rgba(245, 158, 11, 0.2);
    animation: environment-indicator-float 20s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.1);
}

.environment-indicator-lighting {
    width: 50px;
    height: 50px;
    top: 25%;
    left: 30%;
    border-radius: 50%;
    animation-delay: 0s;
}

.environment-indicator-acoustics {
    width: 45px;
    height: 45px;
    top: 65%;
    right: 25%;
    transform: rotate(45deg);
    animation-delay: 6s;
}

.environment-indicator-comfort {
    width: 55px;
    height: 35px;
    bottom: 15%;
    left: 55%;
    border-radius: 17px;
    animation-delay: 12s;
}

@keyframes environment-indicator-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-16px) rotate(4deg);
        opacity: 0.7;
    }
}

/* Facility Feature Highlights */
.facilities-feature-highlights {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.feature-highlight {
    position: absolute;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08), rgba(220, 38, 38, 0.08));
    border: 2px solid rgba(239, 68, 68, 0.2);
    animation: feature-highlight-pulse 8s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(239, 68, 68, 0.1);
}

.feature-highlight-parking {
    width: 40px;
    height: 40px;
    top: 35%;
    left: 20%;
    border-radius: 50%;
    animation-delay: 0s;
}

.feature-highlight-accessibility {
    width: 50px;
    height: 50px;
    top: 60%;
    right: 22%;
    border-radius: 50%;
    animation-delay: 2s;
}

.feature-highlight-security {
    width: 45px;
    height: 45px;
    bottom: 45%;
    left: 50%;
    transform: rotate(45deg);
    animation-delay: 4s;
}

@keyframes feature-highlight-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
        box-shadow: 0 4px 15px rgba(239, 68, 68, 0.1);
    }
    50% {
        transform: scale(1.2);
        opacity: 1;
        box-shadow: 0 8px 25px rgba(239, 68, 68, 0.2);
    }
}

.facilities-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.facilities-particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.1), rgba(118, 75, 162, 0.1));
    border-radius: 50%;
    animation: float-facilities-particle 8s ease-in-out infinite;
}

.facilities-particle-1 {
    width: 70px;
    height: 70px;
    top: 25%;
    left: 15%;
    animation-delay: 0s;
}

.facilities-particle-2 {
    width: 90px;
    height: 90px;
    top: 75%;
    right: 20%;
    animation-delay: 3s;
}

.facilities-particle-3 {
    width: 50px;
    height: 50px;
    bottom: 30%;
    left: 25%;
    animation-delay: 6s;
}

@keyframes float-facilities-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
        opacity: 0.6;
    }
}

.facilities-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.facilities-shape {
    position: absolute;
    background: rgba(37, 99, 235, 0.05);
    border: 1px solid rgba(37, 99, 235, 0.1);
    animation: float-facilities-shape 10s ease-in-out infinite;
}

.facilities-shape-1 {
    width: 120px;
    height: 120px;
    top: 20%;
    right: 15%;
    border-radius: 50%;
    animation-delay: 0s;
}

.facilities-shape-2 {
    width: 80px;
    height: 80px;
    bottom: 20%;
    left: 10%;
    transform: rotate(45deg);
    animation-delay: 5s;
}

@keyframes float-facilities-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.2;
    }
    50% {
        transform: translateY(-25px) rotate(180deg);
        opacity: 0.5;
    }
}

/* Facilities Overview */
.facilities-overview {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.facilities-overview .overview-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(209, 196, 233, 0.2);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.4s both;
}

.facilities-overview .overview-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(209, 196, 233, 0.1), transparent);
    transition: left 0.5s;
}

.facilities-overview .overview-card:hover::before {
    left: 100%;
}

.facilities-overview .overview-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #e0f7fa, #d1c4e9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: #6a4c93;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.facilities-overview .overview-card:hover .overview-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 35px rgba(209, 196, 233, 0.4);
}

.facilities-overview .overview-card h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.facilities-overview .overview-card p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.facilities-overview .overview-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.facilities-overview .overview-stat {
    text-align: center;
    padding: 1.5rem;
    background: rgba(209, 196, 233, 0.1);
    border-radius: 16px;
    border: 1px solid rgba(209, 196, 233, 0.2);
    transition: all 0.3s ease;
}

.facilities-overview .overview-stat:hover {
    background: rgba(209, 196, 233, 0.2);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(209, 196, 233, 0.3);
}

.facilities-overview .overview-stat .stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #6a4c93;
    margin-bottom: 0.5rem;
}

.facilities-overview .overview-stat .stat-label {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

/* Facilities Grid */
.facilities-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.facility-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(209, 196, 233, 0.2);
    border-radius: 24px;
    overflow: hidden;
    position: relative;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
}

.facility-card:nth-child(1) { animation-delay: 0.6s; }
.facility-card:nth-child(2) { animation-delay: 0.8s; }
.facility-card:nth-child(3) { animation-delay: 1s; }
.facility-card:nth-child(4) { animation-delay: 1.2s; }

.facility-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1);
}

.facility-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(209, 196, 233, 0.2) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.facility-image {
    position: relative;
    height: 250px;
    overflow: hidden;
}

.image-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

.facility-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s ease;
}

.facility-card:hover .facility-img {
    transform: scale(1.05);
}

.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(224, 247, 250, 0.8), rgba(209, 196, 233, 0.8));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.3s ease;
}

.facility-card:hover .image-overlay {
    opacity: 1;
}

.overlay-content {
    text-align: center;
    color: white;
}

.overlay-content i {
    font-size: 3rem;
    margin-bottom: 1rem;
    display: block;
}

.overlay-content h4 {
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
}

.facility-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: linear-gradient(45deg, #e0f7fa, #d1c4e9);
    color: #6a4c93;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 0 5px 15px rgba(209, 196, 233, 0.3);
    z-index: 2;
}

.facility-content {
    padding: 2rem;
}

.facility-content h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.facility-description {
    font-size: 1rem;
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.facility-features {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 2rem;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: rgba(209, 196, 233, 0.1);
    border-radius: 12px;
    transition: all 0.3s ease;
}

.feature-item:hover {
    background: rgba(209, 196, 233, 0.2);
    transform: translateX(5px);
}

.feature-item i {
    color: #6a4c93;
    font-size: 1rem;
    width: 20px;
    text-align: center;
}

.feature-item span {
    color: #374151;
    font-size: 0.875rem;
    font-weight: 500;
}

.facility-cta {
    text-align: center;
}

/* Facility Benefits */
.facility-benefits {
    z-index: 2;
    position: relative;
}

.facility-benefits .benefits-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.facility-benefits .benefits-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.facility-benefits .benefits-header p {
    color: #6b7280;
    font-size: 1.125rem;
}

.facility-benefits .benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.facility-benefits .benefit-item {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
}

.facility-benefits .benefit-item:nth-child(1) { animation-delay: 1.7s; }
.facility-benefits .benefit-item:nth-child(2) { animation-delay: 1.8s; }
.facility-benefits .benefit-item:nth-child(3) { animation-delay: 1.9s; }
.facility-benefits .benefit-item:nth-child(4) { animation-delay: 2s; }

.facility-benefits .benefit-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.facility-benefits .benefit-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s;
}

.facility-benefits .benefit-item:hover::before {
    left: 100%;
}

.facility-benefits .benefit-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.facility-benefits .benefit-item:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.facility-benefits .benefit-item h4 {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.facility-benefits .benefit-item p {
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
    font-size: 0.875rem;
}

/* ===== RESPONSIVE STYLES FOR FACILITIES SECTION ===== */
@media (max-width: 1024px) {
    .facilities-grid {
        grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
        gap: 2rem;
    }
    
    .facilities-overview .overview-stats {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .facility-benefits .benefits-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .facilities {
        padding: 4rem 0;
    }
    
    .facilities-overview .overview-card {
        padding: 2rem;
    }
    
    .facilities-overview .overview-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .facilities-overview .overview-card h3 {
        font-size: 1.5rem;
    }
    
    .facilities-overview .overview-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .facilities-overview .overview-stat {
        padding: 1rem;
    }
    
    .facilities-overview .overview-stat .stat-number {
        font-size: 1.5rem;
    }
    
    .facilities-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .facility-image {
        height: 200px;
    }
    
    .facility-content {
        padding: 1.5rem;
    }
    
    .facility-content h3 {
        font-size: 1.25rem;
    }
    
    .facility-description {
        font-size: 0.875rem;
    }
    
    .feature-item {
        padding: 0.5rem;
    }
    
    .feature-item span {
        font-size: 0.75rem;
    }
    
    .facility-benefits .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .facility-benefits .benefit-item {
        padding: 1.5rem;
    }
    
    .facility-benefits .benefit-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .facility-benefits .benefit-item h4 {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .facilities-overview .overview-card {
        padding: 1.5rem;
    }
    
    .facilities-overview .overview-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .facilities-overview .overview-card h3 {
        font-size: 1.25rem;
    }
    
    .facilities-overview .overview-card p {
        font-size: 1rem;
    }
    
    .facilities-overview .overview-stat {
        padding: 0.75rem;
    }
    
    .facilities-overview .overview-stat .stat-number {
        font-size: 1.25rem;
    }
    
    .facilities-overview .overview-stat .stat-label {
        font-size: 0.75rem;
    }
    
    .facility-image {
        height: 180px;
    }
    
    .facility-content {
        padding: 1rem;
    }
    
    .facility-content h3 {
        font-size: 1.125rem;
    }
    
    .facility-description {
        font-size: 0.75rem;
    }
    
    .facility-features {
        gap: 0.5rem;
    }
    
    .feature-item {
        padding: 0.5rem;
    }
    
    .feature-item i {
        font-size: 0.875rem;
        width: 16px;
    }
    
    .feature-item span {
        font-size: 0.75rem;
    }
    
    .facility-benefits .benefit-item {
        padding: 1rem;
    }
    
    .facility-benefits .benefit-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .facility-benefits .benefit-item h4 {
        font-size: 0.875rem;
    }
    
    .facility-benefits .benefit-item p {
        font-size: 0.75rem;
    }
}

/* ===== TESTIMONIALS SECTION ===== */
.testimonials {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #8b7355 0%, #a67c52 20%, #c4a484 40%, #e6d7c3 60%, #f5f1eb 80%, #faf8f5 100%);
    overflow: hidden;
}

/* Testimonials Section Text Colors */
.testimonials .section-header .section-badge {
    color: white;
}

.testimonials .section-header .section-badge span {
    color: white;
}

.testimonials .section-header .section-title {
    color: white;
}

.testimonials .section-header .section-subtitle {
    color: rgba(255, 255, 255, 0.9);
}

/* Enhanced Background Elements */
.testimonials-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* Floating Trust Seals */
.testimonials-trust-seals {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.trust-seal {
    position: absolute;
    background: linear-gradient(135deg, rgba(139, 115, 85, 0.15), rgba(166, 124, 82, 0.15));
    border: 2px solid rgba(139, 115, 85, 0.3);
    animation: trust-seal-float 12s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(139, 115, 85, 0.2);
    transition: all 0.3s ease;
}

.trust-seal:hover {
    transform: scale(1.2);
    box-shadow: 0 8px 25px rgba(139, 115, 85, 0.4);
}

.trust-seal-1 {
    width: 60px;
    height: 60px;
    top: 8%;
    left: 8%;
    border-radius: 50%;
    animation-delay: 0s;
}

.trust-seal-2 {
    width: 50px;
    height: 50px;
    top: 35%;
    right: 12%;
    transform: rotate(45deg);
    animation-delay: 3s;
}

.trust-seal-3 {
    width: 70px;
    height: 70px;
    bottom: 15%;
    left: 15%;
    border-radius: 50%;
    animation-delay: 6s;
}

.trust-seal-4 {
    width: 55px;
    height: 55px;
    top: 75%;
    right: 8%;
    transform: rotate(45deg);
    animation-delay: 9s;
}

@keyframes trust-seal-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-20px) rotate(10deg);
        opacity: 1;
    }
}

/* Satisfaction Progress Rings */
.testimonials-satisfaction-rings {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.satisfaction-ring {
    position: absolute;
    border: 3px solid rgba(139, 115, 85, 0.2);
    border-top: 3px solid rgba(139, 115, 85, 0.8);
    border-radius: 50%;
    animation: satisfaction-ring-spin 4s linear infinite;
    box-shadow: 0 0 15px rgba(139, 115, 85, 0.3);
}

.satisfaction-ring-1 {
    width: 60px;
    height: 60px;
    top: 25%;
    left: 25%;
    animation-delay: 0s;
}

.satisfaction-ring-2 {
    width: 80px;
    height: 80px;
    top: 60%;
    right: 18%;
    animation-delay: 1.5s;
}

.satisfaction-ring-3 {
    width: 50px;
    height: 50px;
    bottom: 25%;
    left: 45%;
    animation-delay: 3s;
}

@keyframes satisfaction-ring-spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Success Achievement Shapes */
.testimonials-achievement-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.achievement-shape {
    position: absolute;
    background: linear-gradient(135deg, rgba(139, 115, 85, 0.1), rgba(166, 124, 82, 0.1));
    border: 2px solid rgba(139, 115, 85, 0.3);
    animation: achievement-shape-float 14s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(139, 115, 85, 0.2);
    transition: all 0.3s ease;
}

.achievement-shape:hover {
    transform: scale(1.15);
    box-shadow: 0 8px 25px rgba(139, 115, 85, 0.4);
}

.achievement-shape-1 {
    width: 65px;
    height: 65px;
    top: 18%;
    left: 40%;
    border-radius: 50%;
    animation-delay: 0s;
}

.achievement-shape-2 {
    width: 55px;
    height: 55px;
    top: 50%;
    right: 30%;
    transform: rotate(45deg);
    animation-delay: 3s;
}

.achievement-shape-3 {
    width: 75px;
    height: 45px;
    bottom: 20%;
    left: 35%;
    border-radius: 22px;
    animation-delay: 6s;
}

.achievement-shape-4 {
    width: 50px;
    height: 50px;
    top: 80%;
    right: 22%;
    border-radius: 50%;
    animation-delay: 9s;
}

@keyframes achievement-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-25px) rotate(8deg);
        opacity: 1;
    }
}

/* Client Satisfaction Orbs */
.testimonials-satisfaction-orbs {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.satisfaction-orb {
    position: absolute;
    background: radial-gradient(circle, rgba(139, 115, 85, 0.3), rgba(139, 115, 85, 0.1));
    border-radius: 50%;
    animation: satisfaction-orb-pulse 6s ease-in-out infinite;
    box-shadow: 0 0 20px rgba(139, 115, 85, 0.4);
}

.satisfaction-orb-1 {
    width: 40px;
    height: 40px;
    top: 12%;
    left: 55%;
    animation-delay: 0s;
}

.satisfaction-orb-2 {
    width: 60px;
    height: 60px;
    top: 45%;
    right: 15%;
    animation-delay: 2s;
}

.satisfaction-orb-3 {
    width: 50px;
    height: 50px;
    bottom: 35%;
    left: 20%;
    animation-delay: 4s;
}

@keyframes satisfaction-orb-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
        box-shadow: 0 0 20px rgba(139, 115, 85, 0.4);
    }
    50% {
        transform: scale(1.3);
        opacity: 1;
        box-shadow: 0 0 30px rgba(139, 115, 85, 0.6);
    }
}

/* Trust Building Elements */
.testimonials-trust-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.trust-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(139, 115, 85, 0.08), rgba(166, 124, 82, 0.08));
    border: 2px solid rgba(139, 115, 85, 0.2);
    animation: trust-element-float 16s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(139, 115, 85, 0.1);
}

.trust-element-1 {
    width: 45px;
    height: 45px;
    top: 22%;
    left: 65%;
    border-radius: 50%;
    animation-delay: 0s;
}

.trust-element-2 {
    width: 55px;
    height: 35px;
    top: 70%;
    right: 25%;
    border-radius: 17px;
    animation-delay: 5s;
}

.trust-element-3 {
    width: 40px;
    height: 40px;
    bottom: 15%;
    left: 50%;
    transform: rotate(45deg);
    animation-delay: 10s;
}

@keyframes trust-element-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-18px) rotate(8deg);
        opacity: 0.7;
    }
}

.testimonials-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.testimonials-particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.1), rgba(118, 75, 162, 0.1));
    border-radius: 50%;
    animation: float-testimonials-particle 7s ease-in-out infinite;
}

.testimonials-particle-1 {
    width: 60px;
    height: 60px;
    top: 15%;
    left: 35%;
    animation-delay: 0s;
}

.testimonials-particle-2 {
    width: 80px;
    height: 80px;
    top: 55%;
    right: 35%;
    animation-delay: 3s;
}

.testimonials-particle-3 {
    width: 40px;
    height: 40px;
    bottom: 25%;
    left: 60%;
    animation-delay: 6s;
}

@keyframes float-testimonials-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
        opacity: 0.6;
    }
}

.testimonials-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.testimonials-shape {
    position: absolute;
    background: rgba(37, 99, 235, 0.05);
    border: 1px solid rgba(37, 99, 235, 0.1);
    animation: float-testimonials-shape 9s ease-in-out infinite;
}

.testimonials-shape-1 {
    width: 100px;
    height: 100px;
    top: 40%;
    right: 10%;
    border-radius: 50%;
    animation-delay: 0s;
}

.testimonials-shape-2 {
    width: 70px;
    height: 70px;
    bottom: 40%;
    left: 25%;
    transform: rotate(45deg);
    animation-delay: 4s;
}

@keyframes float-testimonials-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.2;
    }
    50% {
        transform: translateY(-25px) rotate(180deg);
        opacity: 0.5;
    }
}

/* Testimonials Overview */
.testimonials-overview {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.testimonials-overview .overview-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(139, 115, 85, 0.2);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.4s both;
}

.testimonials-overview .overview-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(139, 115, 85, 0.1), transparent);
    transition: left 0.5s ease;
}

.testimonials-overview .overview-card:hover::before {
    left: 100%;
}

.testimonials-overview .overview-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #8b7355, #a67c52);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.testimonials-overview .overview-card:hover .overview-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 35px rgba(139, 115, 85, 0.4);
}

.testimonials-overview .overview-card h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.testimonials-overview .overview-card p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.testimonials-overview .overview-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.testimonials-overview .overview-stat {
    text-align: center;
    padding: 1.5rem;
    background: rgba(139, 115, 85, 0.05);
    border-radius: 16px;
    border: 1px solid rgba(139, 115, 85, 0.1);
    transition: all 0.3s ease;
}

.testimonials-overview .overview-stat:hover {
    background: rgba(139, 115, 85, 0.1);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(139, 115, 85, 0.2);
}

.testimonials-overview .overview-stat .stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #8b7355;
    margin-bottom: 0.5rem;
}

.testimonials-overview .overview-stat .stat-label {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

/* Testimonials Grid */
.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 3rem;
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.testimonial-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(139, 115, 85, 0.2);
    border-radius: 24px;
    padding: 2.5rem;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
}

.testimonial-card:nth-child(1) { animation-delay: 0.6s; }
.testimonial-card:nth-child(2) { animation-delay: 0.8s; }
.testimonial-card:nth-child(3) { animation-delay: 1s; }

.testimonial-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1);
    border-color: rgba(139, 115, 85, 0.4);
}

.testimonial-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(139, 115, 85, 0.1), transparent);
    transition: left 0.5s ease;
    pointer-events: none;
}

.testimonial-card:hover::before {
    left: 100%;
}

.testimonial-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(139, 115, 85, 0.15) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.testimonial-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.client-info {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.client-avatar {
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
}

.avatar-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avatar-glow {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, #8b7355, #a67c52);
    border-radius: 50%;
    z-index: -1;
    animation: pulse-glow 2s ease-in-out infinite;
}

@keyframes pulse-glow {
    0%, 100% {
        opacity: 0.5;
        transform: scale(1);
    }
    50% {
        opacity: 0.8;
        transform: scale(1.05);
    }
}

.client-details h4 {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 0.25rem;
}

.client-details p {
    font-size: 0.875rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.4;
}

.testimonial-badge {
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    color: #1f2937;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.testimonial-content {
    position: relative;
    margin-bottom: 2rem;
}

.quote-icon {
    position: absolute;
    top: -1rem;
    left: -1rem;
    width: 40px;
    height: 40px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1rem;
}

.testimonial-text {
    font-size: 1.125rem;
    color: #374151;
    line-height: 1.6;
    margin: 0;
    font-style: italic;
    padding-left: 2rem;
}

.testimonial-rating {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
}

.stars {
    display: flex;
    gap: 0.25rem;
}

.stars i {
    color: #ffd700;
    font-size: 1rem;
    animation: star-twinkle 2s ease-in-out infinite;
}

.stars i:nth-child(1) { animation-delay: 0s; }
.stars i:nth-child(2) { animation-delay: 0.2s; }
.stars i:nth-child(3) { animation-delay: 0.4s; }
.stars i:nth-child(4) { animation-delay: 0.6s; }
.stars i:nth-child(5) { animation-delay: 0.8s; }

@keyframes star-twinkle {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.7;
        transform: scale(1.1);
    }
}

.rating-text {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

.testimonial-footer {
    border-top: 1px solid rgba(37, 99, 235, 0.1);
    padding-top: 1.5rem;
}

.testimonial-tags {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.tag {
    background: rgba(37, 99, 235, 0.1);
    color: #2563eb;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.tag:hover {
    background: rgba(37, 99, 235, 0.2);
    transform: translateY(-2px);
}

/* Testimonial Stats */
.testimonial-stats {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.stats-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.stats-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.stats-header p {
    color: #6b7280;
    font-size: 1.125rem;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.stat-item {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
}

.stat-item:nth-child(1) { animation-delay: 1.7s; }
.stat-item:nth-child(2) { animation-delay: 1.8s; }
.stat-item:nth-child(3) { animation-delay: 1.9s; }
.stat-item:nth-child(4) { animation-delay: 2s; }

.stat-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.stat-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.stat-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.stat-item:hover .stat-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.stat-content h4 {
    font-size: 2rem;
    font-weight: 700;
    color: #2563eb;
    margin-bottom: 0.5rem;
}

.stat-content p {
    color: #6b7280;
    font-size: 0.875rem;
    font-weight: 500;
    margin: 0;
}

/* Call to Action */
.testimonials-cta {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    z-index: 2;
    animation: fadeInUp 1s ease-out 2.1s both;
}

.cta-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.cta-content h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.cta-content p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.cta-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.cta-buttons .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    border-radius: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.cta-buttons .btn-primary {
    background: linear-gradient(45deg, #2563eb, #764ba2);
    color: white;
    border: none;
}

.cta-buttons .btn-outline {
    background: transparent;
    color: #2563eb;
    border: 2px solid #2563eb;
}

.cta-buttons .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

/* ===== RESPONSIVE STYLES FOR TESTIMONIALS SECTION ===== */
@media (max-width: 1024px) {
    .testimonials-grid {
        grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
        gap: 2rem;
    }
    
    .testimonials-overview .overview-stats {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .stats-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .testimonials {
        padding: 4rem 0;
    }
    
    .testimonials-overview .overview-card {
        padding: 2rem;
    }
    
    .testimonials-overview .overview-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .testimonials-overview .overview-card h3 {
        font-size: 1.5rem;
    }
    
    .testimonials-overview .overview-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .testimonials-overview .overview-stat {
        padding: 1rem;
    }
    
    .testimonials-overview .overview-stat .stat-number {
        font-size: 1.5rem;
    }
    
    .testimonials-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .testimonial-card {
        padding: 2rem;
    }
    
    .testimonial-header {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }
    
    .client-info {
        justify-content: center;
    }
    
    .client-avatar {
        width: 50px;
        height: 50px;
    }
    
    .client-details h4 {
        font-size: 1rem;
    }
    
    .testimonial-text {
        font-size: 1rem;
        padding-left: 2.5rem;
        margin-top: 0.5rem;
    }
    
    .testimonial-rating {
        justify-content: center;
    }
    
    .testimonial-tags {
        justify-content: center;
    }
    
    .stats-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .stat-item {
        padding: 1.5rem;
    }
    
    .stat-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .stat-content h4 {
        font-size: 1.5rem;
    }
    
    .testimonials-cta {
        padding: 2rem;
    }
    
    .cta-content h3 {
        font-size: 1.5rem;
    }
    
    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 480px) {
    .testimonials-overview .overview-card {
        padding: 1.5rem;
    }
    
    .testimonials-overview .overview-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .testimonials-overview .overview-card h3 {
        font-size: 1.25rem;
    }
    
    .testimonials-overview .overview-card p {
        font-size: 1rem;
    }
    
    .testimonials-overview .overview-stat {
        padding: 0.75rem;
    }
    
    .testimonials-overview .overview-stat .stat-number {
        font-size: 1.25rem;
    }
    
    .testimonials-overview .overview-stat .stat-label {
        font-size: 0.75rem;
    }
    
    .testimonial-card {
        padding: 1.5rem;
    }
    
    .client-avatar {
        width: 40px;
        height: 40px;
    }
    
    .client-details h4 {
        font-size: 0.875rem;
    }
    
    .client-details p {
        font-size: 0.75rem;
    }
    
    .testimonial-badge {
        font-size: 0.625rem;
        padding: 0.25rem 0.75rem;
    }
    
    .quote-icon {
        width: 30px;
        height: 30px;
        font-size: 0.875rem;
        top: -0.5rem;
        left: -0.5rem;
    }
    
    .testimonial-text {
        font-size: 0.875rem;
        padding-left: 2rem;
        margin-top: 0.5rem;
    }
    
    .stars i {
        font-size: 0.875rem;
    }
    
    .rating-text {
        font-size: 0.75rem;
    }
    
    .tag {
        font-size: 0.625rem;
        padding: 0.125rem 0.5rem;
    }
    
    .stat-item {
        padding: 1rem;
    }
    
    .stat-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .stat-content h4 {
        font-size: 1.25rem;
    }
    
    .stat-content p {
        font-size: 0.75rem;
    }
    
    .testimonials-cta {
        padding: 1.5rem;
    }
    
    .cta-content h3 {
        font-size: 1.25rem;
    }
    
    .cta-content p {
        font-size: 1rem;
    }
    
    .cta-buttons .btn {
        padding: 0.75rem 1.5rem;
        font-size: 0.875rem;
    }
}

/* ===== RESPONSIVE STYLES FOR CONTACT SECTION ===== */
@media (max-width: 1024px) {
    .contact-content {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    
    .contact-overview .overview-stats {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .contact-benefits .benefits-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .contact {
        padding: 4rem 0;
    }
    
    .contact-overview .overview-card {
        padding: 2rem;
    }
    
    .contact-overview .overview-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .contact-overview .overview-card h3 {
        font-size: 1.5rem;
    }
    
    .contact-overview .overview-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .contact-overview .overview-stat {
        padding: 1rem;
    }
    
    .contact-overview .overview-stat .stat-number {
        font-size: 1.5rem;
    }
    
    .info-header h3 {
        font-size: 1.5rem;
    }
    
    .contact-methods {
        gap: 1.5rem;
    }
    
    .contact-method {
        padding: 1.5rem;
        text-align: center;
        align-items: center;
    }
    
    .method-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin: 0 auto 1rem auto;
    }
    
    .method-content h4 {
        font-size: 1.125rem;
        margin-bottom: 0.5rem;
        text-align: center;
    }
    
    .method-content p {
        font-size: 0.9rem;
        text-align: center;
        line-height: 1.6;
        margin-bottom: 0.75rem;
    }
    
    .social-links {
        gap: 0.75rem;
    }
    
    .social-link {
        padding: 0.75rem 1rem;
        font-size: 0.875rem;
        border-radius: 6px !important;
        min-width: 100px;
    }
    
    .form-card {
        padding: 2rem;
    }
    
    .modern-form-card {
        padding: 2rem;
    }
    
    .header-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .form-header h3 {
        font-size: 1.5rem;
    }
    
    .modern-input-wrapper input,
    .modern-input-wrapper select,
    .modern-input-wrapper textarea {
        padding: 0.875rem 0.875rem 0.875rem 2.5rem;
        font-size: 0.875rem;
    }
    
    .modern-input-wrapper i {
        font-size: 0.875rem;
        left: 0.875rem;
    }
    
    .modern-submit-btn {
        padding: 0.875rem 1.5rem;
        font-size: 0.875rem;
    }
    
    .modern-form-actions {
        flex-direction: column;
        gap: 1rem;
    }
    
    .form-header h3 {
        font-size: 1.5rem;
    }
    
    .form-row {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .form-actions {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
    }
    
    .contact-benefits .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .contact-benefits .benefit-item {
        padding: 1.5rem;
    }
    
    .contact-benefits .benefit-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .contact-benefits .benefit-item h4 {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .contact-overview .overview-card {
        padding: 1.5rem;
    }
    
    .contact-overview .overview-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .contact-overview .overview-card h3 {
        font-size: 1.25rem;
    }
    
    .contact-overview .overview-card p {
        font-size: 1rem;
    }
    
    .contact-overview .overview-stat {
        padding: 0.75rem;
    }
    
    .contact-overview .overview-stat .stat-number {
        font-size: 1.25rem;
    }
    
    .contact-overview .overview-stat .stat-label {
        font-size: 0.75rem;
    }
    
    .info-header h3 {
        font-size: 1.25rem;
    }
    
    .info-header p {
        font-size: 1rem;
    }
    
    .contact-method {
        padding: 1.5rem 1rem;
        flex-direction: column;
        text-align: center;
        gap: 1.25rem;
        align-items: center;
        min-height: auto;
    }
    
    .method-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin: 0 auto 0.75rem auto;
    }
    
    .method-content h4 {
        font-size: 1.1rem;
        margin-bottom: 0.75rem;
        text-align: center;
    }
    
    .method-content p {
        font-size: 0.9rem;
        line-height: 1.5;
        text-align: center;
        margin-bottom: 0.75rem;
    }
    
    .method-features .feature-tag {
        font-size: 0.625rem;
        padding: 0.125rem 0.5rem;
    }
    
    .social-connect h4 {
        font-size: 1.25rem;
    }
    
    .social-links {
        gap: 0.5rem;
    }
    
    .social-link {
        padding: 0.5rem 0.75rem;
        font-size: 0.75rem;
        border-radius: 6px !important;
        min-width: 90px;
    }
    
    .social-link i {
        font-size: 1rem;
    }
    
    .form-card {
        padding: 1.5rem;
    }
    
    .modern-form-card {
        padding: 1.5rem;
    }
    
    .header-icon {
        width: 45px;
        height: 45px;
        font-size: 1.125rem;
        margin-bottom: 1rem;
    }
    
    .form-header h3 {
        font-size: 1.25rem;
    }
    
    .form-header p {
        font-size: 0.875rem;
    }
    
    .modern-input-wrapper input,
    .modern-input-wrapper select,
    .modern-input-wrapper textarea {
        padding: 0.75rem 0.75rem 0.75rem 2.25rem;
        font-size: 0.875rem;
    }
    
    .modern-input-wrapper i {
        font-size: 0.875rem;
        left: 0.75rem;
    }
    
    .modern-submit-btn {
        padding: 0.75rem 1.25rem;
        font-size: 0.875rem;
        width: 100%;
        justify-content: center;
    }
    
    .form-security-note {
        text-align: center;
        font-size: 0.75rem;
    }
    
    .form-header h3 {
        font-size: 1.25rem;
    }
    
    .form-header p {
        font-size: 0.875rem;
    }
    
    .input-wrapper input,
    .input-wrapper select,
    .input-wrapper textarea {
        padding: 0.75rem 0.75rem 0.75rem 2.5rem;
        font-size: 0.875rem;
    }
    
    .input-wrapper i {
        font-size: 0.875rem;
        left: 0.75rem;
    }
    
    .form-group label {
        font-size: 0.75rem;
    }
    
    .form-actions .btn {
        padding: 0.75rem 1.5rem;
        font-size: 0.875rem;
    }
    
    .form-note {
        font-size: 0.75rem;
    }
    
    .contact-benefits .benefit-item {
        padding: 1rem;
    }
    
    .contact-benefits .benefit-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .contact-benefits .benefit-item h4 {
        font-size: 0.875rem;
    }
    
    .contact-benefits .benefit-item p {
        font-size: 0.75rem;
    }
}

/* ===== JOBS SECTION ===== */
.jobs {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
    overflow: hidden;
}

/* Background Elements */
.jobs-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.jobs-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.jobs-particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(37, 99, 235, 0.1), rgba(118, 75, 162, 0.1));
    border-radius: 50%;
    animation: float-jobs-particle 9s ease-in-out infinite;
}

.jobs-particle-1 {
    width: 80px;
    height: 80px;
    top: 25%;
    left: 10%;
    animation-delay: 0s;
}

.jobs-particle-2 {
    width: 100px;
    height: 100px;
    top: 65%;
    right: 15%;
    animation-delay: 3s;
}

.jobs-particle-3 {
    width: 60px;
    height: 60px;
    bottom: 30%;
    left: 20%;
    animation-delay: 6s;
}

@keyframes float-jobs-particle {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
        opacity: 0.6;
    }
}

.jobs-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.jobs-shape {
    position: absolute;
    background: rgba(37, 99, 235, 0.05);
    border: 1px solid rgba(37, 99, 235, 0.1);
    animation: float-jobs-shape 11s ease-in-out infinite;
}

.jobs-shape-1 {
    width: 130px;
    height: 130px;
    top: 20%;
    right: 10%;
    border-radius: 50%;
    animation-delay: 0s;
}

.jobs-shape-2 {
    width: 90px;
    height: 90px;
    bottom: 25%;
    left: 15%;
    transform: rotate(45deg);
    animation-delay: 5s;
}

@keyframes float-jobs-shape {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.2;
    }
    50% {
        transform: translateY(-25px) rotate(180deg);
        opacity: 0.5;
    }
}

/* Jobs Overview */
.jobs-overview {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.jobs-overview .overview-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out 0.4s both;
}

.jobs-overview .overview-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s ease;
}

.jobs-overview .overview-card:hover::before {
    left: 100%;
}

.jobs-overview .overview-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.jobs-overview .overview-card:hover .overview-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 35px rgba(37, 99, 235, 0.3);
}

.jobs-overview .overview-card h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.jobs-overview .overview-card p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.jobs-overview .overview-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.jobs-overview .overview-stat {
    text-align: center;
    padding: 1.5rem;
    background: rgba(37, 99, 235, 0.05);
    border-radius: 16px;
    border: 1px solid rgba(37, 99, 235, 0.1);
    transition: all 0.3s ease;
}

.jobs-overview .overview-stat:hover {
    background: rgba(37, 99, 235, 0.1);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.2);
}

.jobs-overview .overview-stat .stat-number {
    display: block;
    font-size: 2.5rem;
    font-weight: 800;
    background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 0.5rem;
    text-shadow: 0 0 20px rgba(59, 130, 246, 0.6), 0 0 10px rgba(99, 102, 241, 0.4);
    letter-spacing: -0.02em;
    position: relative;
}

.jobs-overview .overview-stat .stat-label {
    font-size: 1rem;
    color: #6b7280;
    font-weight: 700;
}

/* Jobs Content */
.jobs-content {
    z-index: 2;
    position: relative;
}

.jobs-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 0.6s both;
}

.jobs-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.jobs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-bottom: 4rem;
}

/* Responsive adjustments for different screen sizes */
@media (max-width: 1200px) {
    .jobs-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

@media (max-width: 768px) {
    .jobs-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 0 1rem;
    }
    
    .job-card {
        padding: 1.5rem;
        min-height: auto;
        border-radius: 20px;
    }
    
    .job-header {
        margin-bottom: 1.5rem;
    }
    
    .job-icon {
        width: 50px;
        height: 50px;
    }
    
    .job-icon i {
        font-size: 1.25rem;
    }
    
    .job-badge {
        padding: 0.4rem 0.8rem;
        font-size: 0.8rem;
    }
    
    .job-content h4 {
        font-size: 1.3rem;
        margin-bottom: 0.75rem;
    }
    
    .job-description {
        font-size: 0.95rem;
        line-height: 1.5;
    }
    
    .job-details {
        gap: 0.75rem;
        margin-bottom: 1.5rem;
    }
    
    .detail-item {
        font-size: 0.9rem;
    }
    
    .detail-item i {
        font-size: 0.9rem;
        min-width: 16px;
    }
    
    .job-footer {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .job-actions {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .job-actions .btn {
        width: 100%;
        justify-content: center;
        min-height: 48px;
    }
    
    .job-salary {
        text-align: center;
        margin-top: 0.5rem;
    }
}

/* Extra small mobile devices */
@media (max-width: 480px) {
    .jobs-grid {
        gap: 1rem;
        padding: 0 0.5rem;
    }
    
    .job-card {
        padding: 1rem;
        border-radius: 16px;
    }
    
    .job-header {
        margin-bottom: 1rem;
    }
    
    .job-icon {
        width: 45px;
        height: 45px;
    }
    
    .job-icon i {
        font-size: 1.1rem;
    }
    
    .job-badge {
        padding: 0.35rem 0.7rem;
        font-size: 0.75rem;
    }
    
    .job-content h4 {
        font-size: 1.2rem;
        margin-bottom: 0.5rem;
    }
    
    .job-description {
        font-size: 0.9rem;
        line-height: 1.4;
    }
    
    .job-details {
        gap: 0.5rem;
        margin-bottom: 1rem;
    }
    
    .detail-item {
        font-size: 0.85rem;
    }
    
    .detail-item i {
        font-size: 0.85rem;
        min-width: 14px;
    }
    
    .job-actions .btn {
        min-height: 44px;
        padding: 0.75rem 1rem;
        font-size: 0.9rem;
    }
    
    .job-salary {
        font-size: 0.9rem;
    }
}



/* Enhanced Job Skills Styles */
.job-skills-section {
    margin: 1.5rem 0;
    padding: 1.5rem;
    background: rgba(37, 99, 235, 0.05);
    border-radius: 16px;
    border: 1px solid rgba(37, 99, 235, 0.1);
}

.skills-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.skills-title i {
    color: #2563eb;
    font-size: 1.1rem;
}

.job-skills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.skill-tag {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 25px;
    font-size: 0.85rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.2);
    cursor: default;
}

.skill-tag:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
}

.skill-tag.more-tag {
    background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(107, 114, 128, 0.2);
}

.skill-tag.more-tag:hover {
    background: linear-gradient(135deg, #4b5563 0%, #374151 100%);
    box-shadow: 0 4px 12px rgba(107, 114, 128, 0.3);
}

.skill-tag.more-tag i {
    font-size: 0.75rem;
}





/* Mobile job skills optimization */
@media (max-width: 480px) {
    .job-skills-section {
        padding: 1rem;
        margin: 1rem 0;
    }
    
    .skills-title {
        font-size: 0.95rem;
        margin-bottom: 0.75rem;
    }
    
    .skills-title i {
        font-size: 1rem;
    }
    
    .job-skills {
        gap: 0.5rem;
    }
    
    .skill-tag {
        padding: 0.4rem 0.8rem;
        font-size: 0.8rem;
        border-radius: 20px;
    }
    
    .skill-tag.more-tag i {
        font-size: 0.7rem;
    }
}

.job-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 2rem;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    animation: fadeInUp 1s ease-out both;
    width: 100%;
    min-height: 450px;
    display: flex;
    flex-direction: column;
}

.job-card:nth-child(1) { animation-delay: 0.8s; }
.job-card:nth-child(2) { animation-delay: 1s; }
.job-card:nth-child(3) { animation-delay: 1.2s; }

.job-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1);
}

.job-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.job-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 2rem;
}

.job-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    animation: job-icon-float 3s ease-in-out infinite;
    position: relative;
    z-index: 2;
}

.job-card:hover .job-icon {
    animation: job-icon-pulse 0.6s ease-in-out;
    transform: scale(1.05);
}

.job-icon i {
    font-size: 1.5rem;
    color: white;
    display: block;
    text-align: center;
    line-height: 1;
}

.job-badge {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: var(--radius-md);
    font-size: 0.875rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: var(--shadow-sm);
}

.job-type .type-tag {
    background: rgba(37, 99, 235, 0.1);
    color: #2563eb;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.job-content h4 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.job-description {
    font-size: 1rem;
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 2rem;
}

.job-details {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 2rem;
}

.detail-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #6b7280;
    font-size: 0.875rem;
}

.detail-item i {
    color: #2563eb;
    width: 16px;
    text-align: center;
}

.job-skills {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 2rem;
}

.skill-tag {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
}

.skill-tag::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.skill-tag:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
}

.skill-tag:hover::before {
    left: 100%;
}

.skill-tag.more-tag {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: white;
    font-style: normal;
    box-shadow: 0 2px 8px rgba(251, 191, 36, 0.3);
}

.skill-tag.more-tag:hover {
    box-shadow: 0 8px 20px rgba(251, 191, 36, 0.4);
}

.job-footer {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: auto;
}

.job-actions {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: center;
}

.job-footer .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.875rem;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    cursor: pointer;
    white-space: nowrap;
}

.job-footer .btn-primary {
    background: #2563eb !important;
    color: white !important;
    border-color: #2563eb !important;
}

.job-footer .btn-outline {
    background: transparent !important;
    color: #2563eb !important;
    border: 2px solid #2563eb !important;
    box-shadow: 0 2px 4px rgba(37, 99, 235, 0.1) !important;
}

.job-footer .btn-outline:hover {
    background: #2563eb !important;
    color: white !important;
    box-shadow: 0 4px 8px rgba(37, 99, 235, 0.2) !important;
}

.job-footer .btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(37, 99, 235, 0.2);
}

.job-salary {
    text-align: center;
    flex-shrink: 0;
    min-width: 0;
}

.salary-label {
    display: block;
    font-size: 0.75rem;
    color: #6b7280;
    margin-bottom: 0.25rem;
    white-space: nowrap;
}

.salary-range {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: #2563eb;
    white-space: nowrap;
}

/* Job Benefits */
.job-benefits {
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.job-benefits .benefits-header {
    text-align: center;
    margin-bottom: 3rem;
    animation: fadeInUp 1s ease-out 1.6s both;
}

.job-benefits .benefits-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.job-benefits .benefits-header p {
    color: #6b7280;
    font-size: 1.125rem;
}

.job-benefits .benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

.job-benefits .benefit-item {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp 1s ease-out both;
}

.job-benefits .benefit-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.job-benefits .benefit-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.05), transparent);
    transition: left 0.5s;
}

.job-benefits .benefit-item:hover::before {
    left: 100%;
}

.job-benefits .benefit-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(45deg, #2563eb, #764ba2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.job-benefits .benefit-item:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

.job-benefits .benefit-item h4 {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.job-benefits .benefit-item p {
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
    font-size: 0.875rem;
}

/* Jobs CTA */
.jobs-cta {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(37, 99, 235, 0.1);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    z-index: 2;
    animation: fadeInUp 1s ease-out 2.1s both;
}

.cta-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(37, 99, 235, 0.1) 0%, transparent 70%);
    animation: rotate-glow 10s linear infinite;
    pointer-events: none;
}

.cta-content h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 1rem;
}

.cta-content p {
    font-size: 1.125rem;
    color: #6b7280;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.cta-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.cta-buttons .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    border-radius: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.cta-buttons .btn-primary {
    background: linear-gradient(45deg, #2563eb, #764ba2);
    color: white;
    border: none;
}

.cta-buttons .btn-outline {
    background: transparent;
    color: #2563eb;
    border: 2px solid #2563eb;
}

.cta-buttons .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.3);
}

/* ===== RESPONSIVE STYLES FOR JOBS SECTION ===== */
@media (max-width: 1200px) {
    .jobs-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
    
    .jobs-overview .overview-stats {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .job-benefits .benefits-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .jobs {
        padding: 4rem 0;
    }
    
    .jobs-overview .overview-card {
        padding: 2rem;
    }
    
    .jobs-overview .overview-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .jobs-overview .overview-card h3 {
        font-size: 1.5rem;
    }
    
    .jobs-overview .overview-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .jobs-overview .overview-stat {
        padding: 1rem;
    }
    
    .jobs-overview .overview-stat .stat-number {
        font-size: 1.5rem;
        background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        text-shadow: 0 0 15px rgba(59, 130, 246, 0.6), 0 0 8px rgba(99, 102, 241, 0.4);
    }
    
    .jobs-header h3 {
        font-size: 1.5rem;
    }
    
    .jobs-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .job-card {
        padding: 2rem;
    }
    
    .job-header {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    
    .job-content h4 {
        font-size: 1.25rem;
    }
    
    .job-description {
        font-size: 0.875rem;
    }
    
    .job-details {
        gap: 0.5rem;
    }
    
    .detail-item {
        font-size: 0.75rem;
    }
    
    .job-skills {
        gap: 0.25rem;
    }
    
    .skill-tag {
        font-size: 0.625rem;
        padding: 0.125rem 0.5rem;
    }
    
    .job-footer {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    
    .job-salary {
        text-align: left;
    }
    
    .job-benefits .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .job-benefits .benefit-item {
        padding: 1.5rem;
    }
    
    .job-benefits .benefit-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .job-benefits .benefit-item h4 {
        font-size: 1rem;
    }
    
    .jobs-cta {
        padding: 2rem;
    }
    
    .cta-content h3 {
        font-size: 1.5rem;
    }
    
    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 480px) {
    .jobs-overview .overview-card {
        padding: 1.5rem;
    }
    
    .jobs-overview .overview-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .jobs-overview .overview-card h3 {
        font-size: 1.25rem;
    }
    
    .jobs-overview .overview-card p {
        font-size: 1rem;
    }
    
    .jobs-overview .overview-stat {
        padding: 0.75rem;
    }
    
    .jobs-overview .overview-stat .stat-number {
        font-size: 1.25rem;
        background: linear-gradient(135deg, #3b82f6, #6366f1, #8b5cf6);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        text-shadow: 0 0 12px rgba(59, 130, 246, 0.6), 0 0 6px rgba(99, 102, 241, 0.4);
    }
    
    .jobs-overview .overview-stat .stat-label {
        font-size: 0.8rem;
        color: #6b7280;
        font-weight: 700;
    }
    
    .jobs-header h3 {
        font-size: 1.25rem;
    }
    
    .jobs-header p {
        font-size: 1rem;
    }
    
    .job-card {
        padding: 1.5rem;
    }
    
    .job-badge {
        font-size: 0.625rem;
        padding: 0.25rem 0.75rem;
    }
    
    .job-type .type-tag {
        font-size: 0.625rem;
        padding: 0.25rem 0.75rem;
    }
    
    .job-content h4 {
        font-size: 1.125rem;
    }
    
    .job-description {
        font-size: 0.75rem;
    }
    
    .detail-item {
        font-size: 0.625rem;
    }
    
    .detail-item i {
        width: 12px;
    }
    
    .skill-tag {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
        border-radius: 16px;
    }
    
    .job-footer .btn {
        padding: 0.75rem 1.5rem;
        font-size: 0.875rem;
    }
    
    .salary-label {
        font-size: 0.625rem;
    }
    
    .salary-range {
        font-size: 0.875rem;
    }
    
    .job-benefits .benefit-item {
        padding: 1rem;
    }
    
    .job-benefits .benefit-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .job-benefits .benefit-item h4 {
        font-size: 0.875rem;
    }
    
    .job-benefits .benefit-item p {
        font-size: 0.75rem;
    }
    
    .jobs-cta {
        padding: 1.5rem;
    }
    
    .cta-content h3 {
        font-size: 1.25rem;
    }
    
    .cta-content p {
        font-size: 1rem;
    }
    
    .cta-buttons .btn {
        padding: 0.75rem 1.5rem;
        font-size: 0.875rem;
    }
}

@keyframes rotate-glow {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ===== RESPONSIVE STYLES FOR NEW HERO DESIGN ===== */
@media (max-width: 1024px) {
    .hero-content {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }
    
    .hero-title {
        font-size: 3rem;
    }
    
    .visual-container {
        height: 500px;
    }
    
    .stat-card-1 {
        right: -10%;
    }
    
    .stat-card-3 {
        right: -5%;
    }
    
    .training-card {
        bottom: -15%;
        min-width: 180px;
    }
    
    .hero .service-card-1 {
        left: 2%;
    }
    
    .hero .service-card-2 {
        right: 2%;
    }
    
    .badge-1 {
        right: -8%;
    }
    
    .badge-2 {
        left: -6%;
    }
    
    .badge-3 {
        right: -4%;
    }
}

@media (max-width: 768px) {
    .hero {
        min-height: 80vh;
        padding: 8rem 0 2rem 0; /* Add more top padding for better spacing from navbar */
    }
    
    .hero-content {
        grid-template-columns: 1fr;
        gap: 2rem;
        text-align: center;
        padding: 0 1rem;
    }
    
    /* Enhanced Mobile Typography */
    .hero-title {
        font-size: 2.5rem;
        line-height: 1.1;
        margin-bottom: 1.25rem;
        word-wrap: break-word;
        hyphens: auto;
    }
    
    .hero-description {
        font-size: 1.125rem;
        line-height: 1.5;
        margin-bottom: 2.5rem;
        max-width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
    
    /* Enhanced Touch-Friendly Actions */
    .hero-actions {
        flex-direction: column;
        align-items: center;
        gap: 1.25rem;
        margin-bottom: 2.5rem;
        width: 100%;
    }
    
    .btn-primary,
    .btn-secondary {
        width: 100%;
        max-width: 320px;
        justify-content: center;
        padding: 1rem 2rem;
        font-size: 1rem;
        min-height: 48px; /* Touch-friendly minimum height */
        border-radius: 25px;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }
    
    .btn-primary:active,
    .btn-secondary:active {
        transform: translateY(1px);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    }
    
    .hero-stats {
        flex-direction: row;
        justify-content: center;
        gap: 1.5rem;
        flex-wrap: wrap;
    }
    
    /* Minimal Mobile Visual Layout - Only show main feature card */
    .hero-visual {
        height: auto;
        min-height: 400px;
        order: -1;
        margin-bottom: 1.5rem;
        margin-top: 2rem;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0;
        padding: 2rem 1rem;
        overflow: visible;
    }
    
    .feature-card {
        width: 100%;
        max-width: 380px;
        height: 320px;
        padding: 2.5rem;
        margin: 0 auto;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.2);
        position: relative;
        order: 1;
        background: rgba(255, 255, 255, 0.15);
        backdrop-filter: blur(25px);
        border: 2px solid rgba(255, 215, 0, 0.3);
        border-radius: 20px;
        overflow: visible;
    }
    
    .card-content h3 {
        font-size: 1.75rem;
        margin-bottom: 1rem;
        color: #ffd700;
        text-align: center;
        font-weight: 700;
    }
    
    .card-content p {
        font-size: 1.125rem;
        line-height: 1.6;
        text-align: center;
        color: rgba(255, 255, 255, 0.9);
        margin: 0;
    }
    
    /* Hide ALL service cards on mobile for minimal design */
    .service-cards {
        display: none;
    }
    
    /* Hide ALL trust indicators on mobile for minimal design */
    .trust-indicators {
        display: none;
    }

    /* Enhanced Mobile Performance Optimization */
    .bg-icon {
        display: none; /* Hide background icons on mobile for performance */
    }
    
    /* Enhanced Hero Badge for Mobile */
    .hero-badge {
        padding: 0.75rem 1.5rem;
        font-size: 0.9rem;
        margin-bottom: 2rem;
        background: rgba(255, 255, 255, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.25);
    }
    
    .badge-icon {
        width: 22px;
        height: 22px;
        font-size: 0.75rem;
    }
    
    /* Enhanced Scroll Indicator for Mobile */
    .scroll-indicator {
        bottom: 1.5rem;
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(10px);
        padding: 0.75rem 1.5rem;
        border-radius: 25px;
        border: 1px solid rgba(255, 255, 255, 0.2);
    }
    
    .scroll-indicator span {
        font-size: 0.9rem;
        font-weight: 500;
    }
    
    .scroll-arrow {
        font-size: 1.1rem;
        margin-bottom: 0.5rem;
    }
    
    /* Mobile Scroll Indicator - Enhanced for Mobile */
    .mobile-scroll {
        margin-top: 2.5rem;
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(10px);
        padding: 1rem 1.5rem;
        border-radius: 25px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        width: fit-content;
        margin-left: auto;
        margin-right: auto;
    }
    
    .mobile-scroll .scroll-arrow {
        font-size: 1.2rem;
        margin-bottom: 0.5rem;
    }
    
    .mobile-scroll span {
        font-size: 0.95rem;
        font-weight: 600;
    }
    
    /* Ensure proper spacing for mobile */
    .hero-background {
        min-height: 100vh;
    }
    
    /* Optimize animations for mobile */
    .hero-left,
    .hero-right {
        animation-duration: 0.8s;
    }
    
    /* Mobile-specific shape optimizations */
    .shape {
        display: none; /* Hide complex shapes on mobile for performance */
    }
    
    /* Enhanced mobile content flow */
    .hero-left {
        order: 2;
    }
    
    .hero-right {
        order: 1;
    }
    
    /* Mobile touch feedback improvements */
    .hero-actions .btn-primary:active,
    .hero-actions .btn-secondary:active {
        transform: translateY(1px);
        transition: transform 0.1s ease;
    }
    
    /* Mobile performance optimizations */
    .hero-pattern {
        animation-duration: 30s; /* Slower animation for mobile */
    }
    
    /* Mobile scroll behavior */
    .scroll-indicator {
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }
}

@media (max-width: 480px) {
    .hero {
        min-height: 70vh;
        padding: 6rem 0 1.5rem 0; /* Add more top padding for better spacing from navbar */
    }
    
    .hero-content {
        padding: 0 0.75rem;
        gap: 1.5rem;
    }
    
    /* Ultra-Mobile Optimized Typography */
    .hero-title {
        font-size: 2rem;
        line-height: 1.1;
        margin-bottom: 1rem;
        padding: 0 0.5rem;
    }
    
    .hero-description {
        font-size: 1rem;
        line-height: 1.4;
        margin-bottom: 2rem;
        max-width: 95%;
        padding: 0 0.25rem;
    }
    
    /* Ultra-Mobile Touch-Friendly Actions */
    .hero-actions {
        gap: 1rem;
        margin-bottom: 2rem;
        padding: 0 0.5rem;
    }
    
    .btn-primary,
    .btn-secondary {
        padding: 0.875rem 1.5rem;
        font-size: 0.95rem;
        max-width: 280px;
        min-height: 44px; /* Slightly smaller but still touch-friendly */
    }
    
    /* Ultra-Mobile Visual Layout - Even more minimal */
    .hero-visual {
        height: auto;
        min-height: 320px;
        margin-bottom: 1rem;
        margin-top: 1.5rem;
        padding: 1.5rem 0.5rem;
        gap: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: visible;
    }
    
    .feature-card {
        height: 260px;
        padding: 2rem;
        max-width: 320px;
        order: 1;
        background: rgba(255, 255, 255, 0.15);
        backdrop-filter: blur(25px);
        border: 2px solid rgba(255, 215, 0, 0.3);
        border-radius: 20px;
        overflow: visible;
    }
    
    .card-content h3 {
        font-size: 1.5rem;
        margin-bottom: 0.75rem;
        color: #ffd700;
        text-align: center;
        font-weight: 700;
    }
    
    .card-content p {
        font-size: 1rem;
        line-height: 1.5;
        text-align: center;
        color: rgba(255, 255, 255, 0.9);
        margin: 0;
    }
    
    /* Hide ALL service cards on ultra-mobile */
    .service-cards {
        display: none;
    }
    
    /* Hide ALL trust indicators on ultra-mobile */
    .trust-indicators {
        display: none;
    }
    
    .service-content h4 {
        font-size: 0.8rem;
        margin-bottom: 0.125rem;
    }
    
    .service-content p {
        font-size: 0.65rem;
        line-height: 1.1;
    }
    
    /* Ultra-Mobile Trust Indicators - Vertical Stack */
    .trust-indicators {
        gap: 0.75rem;
        margin-top: 0.75rem;
        flex-direction: column;
        align-items: center;
    }
    
    .trust-item {
        padding: 0.375rem 0.75rem;
        font-size: 0.7rem;
        width: 140px;
        text-align: center;
    }
    
    /* Ultra-Mobile Hero Badge */

/* Ensure all elements are visible on desktop */
@media (min-width: 769px) {
    .service-card.service-3 {
        display: flex !important;
    }
    
    .trust-item:nth-child(3) {
        display: flex !important;
    }
    
    /* Ensure desktop scroll indicator works properly - override mobile-scroll class */
    .hero .hero-left .scroll-indicator.mobile-scroll {
        position: fixed !important;
        bottom: 2rem !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.5rem !important;
        color: rgba(255, 255, 255, 0.8) !important;
        text-decoration: none !important;
        transition: all 0.3s ease !important;
        z-index: 1000 !important;
        cursor: pointer !important;
        user-select: none !important;
        padding: 0.5rem !important;
        border-radius: 25px !important;
        background: transparent !important;
        backdrop-filter: none !important;
        border: none !important;
        margin-top: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: auto !important;
    }
    
    .hero .hero-left .scroll-indicator.mobile-scroll:hover {
        transform: translateX(-50%) translateY(-2px) !important;
        color: rgba(255, 255, 255, 1) !important;
    }
}
    .hero-badge {
        padding: 0.625rem 1.25rem;
        font-size: 0.8rem;
        margin-bottom: 1.5rem;
    }
    
    .badge-icon {
        width: 20px;
        height: 20px;
        font-size: 0.7rem;
    }
    
    /* Ultra-Mobile Scroll Indicator */
    .scroll-indicator {
        bottom: 1rem;
        padding: 0.5rem 1rem;
    }
    
    .scroll-indicator span {
        font-size: 0.8rem;
    }
    
    .scroll-arrow {
        font-size: 1rem;
        margin-bottom: 0.25rem;
    }
    
    /* Ultra-Mobile Stats */
    .hero-stats {
        gap: 1rem;
    }
    
    .stat-number {
        font-size: 1.75rem;
    }
    
    .stat-label {
        font-size: 0.8rem;
    }
    
    /* Ultra-Mobile Content Flow */
    .hero-left {
        order: 2;
    }
    
    .hero-right {
        order: 1;
    }
    
    /* Ultra-Mobile Touch Enhancements */
    .hero-actions .btn-primary:active,
    .hero-actions .btn-secondary:active {
        transform: translateY(1px);
        transition: transform 0.1s ease;
    }
    
    /* Ultra-Mobile Performance */
    .hero-pattern {
        animation-duration: 40s; /* Even slower for ultra-mobile */
    }
    
    /* Ultra-Mobile Scroll Behavior */
    .scroll-indicator {
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
        bottom: 0.75rem;
    }
    
    /* Ultra-Mobile Visual Simplification */
    .hero-gradient-bg {
        opacity: 0.7; /* Slightly reduce opacity for better text readability */
    }
}

/* Service Cards */
.service-cards {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 5;
}

.hero .service-card {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 16px;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: white;
    animation: fadeInUp 1s ease-out both;
    transition: all 0.3s ease;
    min-width: 180px;
    z-index: 3;
}

.hero .service-card:hover {
    transform: translateY(-5px) scale(1.05);
    background: rgba(255, 255, 255, 0.15);
}

.hero .service-card-1 {
    top: 10%;
    left: -10%;
    animation-delay: 1.6s;
}

.hero .service-card-2 {
    bottom: 10%;
    right: -10%;
    animation-delay: 1.8s;
}

.hero .service-icon {
    width: 35px;
    height: 35px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 1rem;
    flex-shrink: 0;
}

.hero .service-content h4 {
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    line-height: 1.2;
}

.hero .service-content p {
    font-size: 0.75rem;
    opacity: 0.8;
    margin: 0;
    line-height: 1.3;
}

.hero .service-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
    animation: rotate-glow 8s linear infinite;
    pointer-events: none;
}

/* Achievement Badges */
.achievement-badges {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.badge-item {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 0.5rem 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: white;
    font-size: 0.75rem;
    font-weight: 600;
    animation: fadeInUp 1s ease-out both;
    transition: all 0.3s ease;
}

.badge-item:hover {
    transform: translateY(-3px) scale(1.05);
    background: rgba(255, 255, 255, 0.15);
}

.badge-1 {
    top: 25%;
    right: -15%;
    animation-delay: 2s;
}

.badge-2 {
    bottom: 35%;
    left: -12%;
    animation-delay: 2.2s;
}

.badge-3 {
    top: 70%;
    right: -8%;
    animation-delay: 2.4s;
}

.badge-item i {
    color: #ffd700;
    font-size: 0.875rem;
}

/* Updated Floating Elements */
.float-4 {
    top: 40%;
    right: 15%;
    animation-delay: 1s;
}

.float-5 {
    bottom: 10%;
    left: 15%;
    animation-delay: 3s;
}

.float-6 {
    top: 15%;
    left: 25%;
    animation-delay: 2s;
}

.float-7 {
    bottom: 20%;
    right: 25%;
    animation-delay: 4s;
}

.float-8 {
    top: 55%;
    left: 5%;
    animation-delay: 1.5s;
}

.float-9 {
    top: 75%;
    right: 5%;
    animation-delay: 2.5s;
}

.float-10 {
    bottom: 35%;
    right: 35%;
    animation-delay: 3.5s;
}

/* Training Session Card (Below Main Card) */
.training-card {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 16px;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    color: white;
    animation: fadeInUp 1s ease-out both;
    transition: all 0.3s ease;
    min-width: 200px;
    bottom: -20%;
    left: 50%;
    transform: translateX(-50%);
    animation-delay: 1.5s;
}

.training-card:hover {
    transform: translateX(-50%) translateY(-5px) scale(1.05);
    background: rgba(255, 255, 255, 0.15);
}

.training-icon {
    width: 45px;
    height: 45px;
    background: linear-gradient(45deg, #ffd700, #ffed4e);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f2937;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.training-content h3 {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.training-content p {
    font-size: 0.875rem;
    opacity: 0.8;
    margin: 0;
}

.training-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
    animation: rotate-glow 8s linear infinite;
    pointer-events: none;
}

/* Updated Floating Elements */
.float-4 {
    top: 40%;
    right: 15%;
    animation-delay: 1s;
}

.float-5 {
    bottom: 10%;
    left: 15%;
    animation-delay: 3s;
}

.float-6 {
    top: 15%;
    left: 25%;
    animation-delay: 2s;
}

.float-7 {
    bottom: 20%;
    right: 25%;
    animation-delay: 4s;
}

.float-8 {
    top: 55%;
    left: 5%;
    animation-delay: 1.5s;
}

.float-9 {
    top: 75%;
    right: 5%;
    animation-delay: 2.5s;
}

.float-10 {
    bottom: 35%;
    right: 35%;
    animation-delay: 3.5s;
}

/* Updated Floating Elements - Better Distribution */
.float-1 {
    top: 15%;
    left: 15%;
    animation-delay: 0.5s;
    z-index: 2;
}

.float-2 {
    top: 35%;
    left: 8%;
    animation-delay: 1.5s;
    z-index: 1;
}

.float-3 {
    top: 55%;
    left: 20%;
    animation-delay: 2.5s;
    z-index: 3;
}

.float-4 {
    top: 75%;
    left: 12%;
    animation-delay: 1s;
    z-index: 2;
}

.float-5 {
    top: 25%;
    right: 30%;
    animation-delay: 3s;
    z-index: 1;
}

.float-6 {
    top: 45%;
    right: 15%;
    animation-delay: 2s;
    z-index: 2;
}

.float-7 {
    top: 65%;
    right: 25%;
    animation-delay: 1.5s;
    z-index: 1;
}

.float-8 {
    top: 85%;
    right: 18%;
    animation-delay: 2.5s;
    z-index: 3;
}

.float-9 {
    top: 40%;
    right: 45%;
    animation-delay: 3.5s;
    z-index: 2;
}

.float-10 {
    bottom: 20%;
    right: 35%;
    animation-delay: 3.5s;
    z-index: 1;
}

/* Scattered Animated Icons */
.background-icons {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 2;
}

.bg-icon {
    position: absolute;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.6);
    font-size: 1rem;
    animation: iconFloat 6s ease-in-out infinite;
    transition: all 0.3s ease;
}

.bg-icon:hover {
    background: rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.9);
    transform: scale(1.2);
}

/* Positioned to avoid overlapping */
.bg-icon-1 {
    top: 15%;
    left: 15%;
    animation-delay: 0s;
}

.bg-icon-2 {
    top: 25%;
    right: 20%;
    animation-delay: 1s;
}

.bg-icon-3 {
    top: 45%;
    left: 10%;
    animation-delay: 2s;
}

.bg-icon-4 {
    top: 55%;
    right: 15%;
    animation-delay: 3s;
}

.bg-icon-5 {
    top: 75%;
    left: 25%;
    animation-delay: 4s;
}

.bg-icon-6 {
    top: 85%;
    right: 10%;
    animation-delay: 5s;
}

.bg-icon-7 {
    top: 35%;
    left: 60%;
    animation-delay: 0.5s;
}

.bg-icon-8 {
    top: 65%;
    left: 70%;
    animation-delay: 1.5s;
}

.bg-icon-9 {
    top: 5%;
    left: 50%;
    animation-delay: 2.5s;
}

.bg-icon-10 {
    top: 95%;
    left: 50%;
    animation-delay: 3.5s;
}

.bg-icon-11 {
    top: 15%;
    left: 45%;
    animation-delay: 4s;
}

.bg-icon-12 {
    top: 25%;
    left: 35%;
    animation-delay: 4.5s;
}

.bg-icon-13 {
    top: 35%;
    left: 55%;
    animation-delay: 5s;
}

.bg-icon-14 {
    top: 45%;
    left: 25%;
    animation-delay: 5.5s;
}

.bg-icon-15 {
    top: 55%;
    left: 65%;
    animation-delay: 6s;
}

.bg-icon-16 {
    top: 65%;
    left: 35%;
    animation-delay: 6.5s;
}

.bg-icon-17 {
    top: 75%;
    left: 55%;
    animation-delay: 7s;
}

.bg-icon-18 {
    top: 85%;
    left: 45%;
    animation-delay: 7.5s;
}

.bg-icon-19 {
    top: 20%;
    left: 75%;
    animation-delay: 8s;
}

.bg-icon-20 {
    top: 70%;
    left: 75%;
    animation-delay: 8.5s;
}

.bg-icon-21 {
    top: 10%;
    left: 15%;
    animation-delay: 9s;
}

.bg-icon-22 {
    top: 30%;
    left: 8%;
    animation-delay: 9.5s;
}

.bg-icon-23 {
    top: 50%;
    left: 12%;
    animation-delay: 10s;
}

.bg-icon-24 {
    top: 80%;
    left: 18%;
    animation-delay: 10.5s;
}

.bg-icon-25 {
    top: 5%;
    left: 5%;
    animation-delay: 11s;
}

.bg-icon-26 {
    top: 5%;
    right: 5%;
    animation-delay: 11.5s;
}

.bg-icon-27 {
    bottom: 5%;
    left: 5%;
    animation-delay: 12s;
}

.bg-icon-28 {
    bottom: 5%;
    right: 5%;
    animation-delay: 12.5s;
}

@keyframes iconFloat {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-20px) rotate(10deg);
        opacity: 1;
    }
}

/* Portfolio Section */
.portfolio {
    padding: 6rem 0;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    position: relative;
    overflow: hidden;
}

/* Enhanced Background Elements */
.portfolio-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

/* Animated Success Metrics */
.portfolio-success-metrics {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.success-metric {
    position: absolute;
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.08), rgba(118, 75, 162, 0.08));
    border: 2px solid rgba(102, 126, 234, 0.15);
    border-radius: 50%;
    animation: success-metric-float 15s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.1);
}

.success-metric-1 {
    width: 80px;
    height: 80px;
    top: 15%;
    left: 10%;
    animation-delay: 0s;
}

.success-metric-2 {
    width: 60px;
    height: 60px;
    top: 65%;
    right: 15%;
    animation-delay: 4s;
}

.success-metric-3 {
    width: 100px;
    height: 100px;
    bottom: 20%;
    left: 20%;
    animation-delay: 8s;
}

.success-metric-4 {
    width: 70px;
    height: 70px;
    top: 35%;
    right: 25%;
    animation-delay: 12s;
}

@keyframes success-metric-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-25px) rotate(10deg);
        opacity: 1;
    }
}

/* Industry-Specific Shapes */
.portfolio-industry-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.industry-shape {
    position: absolute;
    animation: industry-shape-float 18s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.industry-shape-tech {
    width: 50px;
    height: 50px;
    top: 25%;
    left: 30%;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(37, 99, 235, 0.1));
    border: 2px solid rgba(59, 130, 246, 0.2);
    border-radius: 8px;
    animation-delay: 0s;
}

.industry-shape-manufacturing {
    width: 60px;
    height: 40px;
    top: 55%;
    right: 30%;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1), rgba(5, 150, 105, 0.1));
    border: 2px solid rgba(16, 185, 129, 0.2);
    border-radius: 20px;
    animation-delay: 3s;
}

.industry-shape-healthcare {
    width: 45px;
    height: 45px;
    bottom: 35%;
    left: 40%;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.1), rgba(220, 38, 38, 0.1));
    border: 2px solid rgba(239, 68, 68, 0.2);
    border-radius: 50%;
    animation-delay: 6s;
}

.industry-shape-finance {
    width: 55px;
    height: 55px;
    top: 45%;
    right: 45%;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.1), rgba(217, 119, 6, 0.1));
    border: 2px solid rgba(245, 158, 11, 0.2);
    transform: rotate(45deg);
    animation-delay: 9s;
}

.industry-shape-retail {
    width: 40px;
    height: 60px;
    bottom: 25%;
    right: 20%;
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.1), rgba(147, 51, 234, 0.1));
    border: 2px solid rgba(168, 85, 247, 0.2);
    border-radius: 20px;
    animation-delay: 12s;
}

@keyframes industry-shape-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-20px) rotate(5deg);
        opacity: 0.8;
    }
}

/* Achievement Badges */
.portfolio-achievement-badges {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.achievement-badge {
    position: absolute;
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.1), rgba(245, 158, 11, 0.1));
    border: 2px solid rgba(251, 191, 36, 0.2);
    animation: achievement-badge-pulse 6s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(251, 191, 36, 0.1);
}

.achievement-badge-1 {
    width: 70px;
    height: 70px;
    top: 20%;
    right: 10%;
    border-radius: 50%;
    animation-delay: 0s;
}

.achievement-badge-2 {
    width: 80px;
    height: 50px;
    top: 70%;
    left: 15%;
    border-radius: 25px;
    animation-delay: 2s;
}

.achievement-badge-3 {
    width: 60px;
    height: 60px;
    bottom: 30%;
    right: 35%;
    transform: rotate(45deg);
    animation-delay: 4s;
}

@keyframes achievement-badge-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
        box-shadow: 0 4px 15px rgba(251, 191, 36, 0.1);
    }
    50% {
        transform: scale(1.2);
        opacity: 1;
        box-shadow: 0 8px 25px rgba(251, 191, 36, 0.2);
    }
}

/* Success Flow Elements */
.portfolio-success-flow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.success-flow-element {
    position: absolute;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(5, 150, 105, 0.08));
    border: 1px solid rgba(16, 185, 129, 0.2);
    animation: success-flow-float 20s ease-in-out infinite;
}

.success-flow-1 {
    width: 45px;
    height: 45px;
    top: 30%;
    left: 50%;
    border-radius: 50%;
    animation-delay: 0s;
}

.success-flow-2 {
    width: 65px;
    height: 35px;
    top: 60%;
    right: 25%;
    border-radius: 17px;
    animation-delay: 7s;
}

.success-flow-3 {
    width: 55px;
    height: 55px;
    bottom: 40%;
    left: 25%;
    transform: rotate(45deg);
    animation-delay: 14s;
}

@keyframes success-flow-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.4;
    }
    50% {
        transform: translateY(-18px) rotate(8deg);
        opacity: 0.7;
    }
}

/* Trust Indicators */
.portfolio-trust-indicators {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.trust-indicator {
    position: absolute;
    width: 10px;
    height: 10px;
    background: linear-gradient(135deg, #667eea, #764ba2);
    border-radius: 50%;
    animation: trust-indicator-pulse 4s ease-in-out infinite;
    box-shadow: 0 0 12px rgba(102, 126, 234, 0.6);
}

.trust-indicator-1 {
    top: 40%;
    left: 20%;
    animation-delay: 0s;
}

.trust-indicator-2 {
    top: 65%;
    right: 40%;
    animation-delay: 1.5s;
}

.trust-indicator-3 {
    bottom: 45%;
    left: 35%;
    animation-delay: 3s;
}

@keyframes trust-indicator-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.7;
        box-shadow: 0 0 12px rgba(102, 126, 234, 0.6);
    }
    50% {
        transform: scale(1.8);
        opacity: 1;
        box-shadow: 0 0 20px rgba(102, 126, 234, 0.8);
    }
}

.portfolio .section-header {
    text-align: center;
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.portfolio .section-title {
    color: #667eea;
}

.portfolio .section-subtitle {
    color: #64748b;
}

/* Portfolio Stats */
.portfolio-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-bottom: 4rem;
    z-index: 2;
    position: relative;
}

.stat-card {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    box-shadow: 0 4px 6px -1px rgba(118, 75, 162, 0.1);
    transition: all 0.3s ease;
    border: 1px solid rgba(118, 75, 162, 0.1);
    position: relative;
    overflow: hidden;
}

.stat-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(102, 126, 234, 0.05), transparent);
    transition: left 0.5s ease;
}

.stat-card:hover::before {
    left: 100%;
}

.stat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(118, 75, 162, 0.15);
    border-color: rgba(118, 75, 162, 0.2);
}

.stat-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.5rem;
}

.stat-content h3 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #667eea;
    margin-bottom: 0.5rem;
}

.stat-content p {
    font-size: 1rem;
    color: #64748b;
    font-weight: 500;
}

/* Client Showcase */
.client-showcase {
    position: relative;
    margin-top: 3rem;
    z-index: 2;
}

.showcase-header {
    text-align: center;
    margin-bottom: 3rem;
}

.showcase-header h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #667eea;
    margin-bottom: 0.5rem;
}

.showcase-header p {
    font-size: 1.125rem;
    color: #64748b;
}

/* Marquee Container */
.marquee-container {
    overflow: hidden;
    position: relative;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    z-index: 2;
}

.marquee-container {
    padding: 2.5rem 0;
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.03) 0%, rgba(118, 75, 162, 0.08) 50%, rgba(102, 126, 234, 0.03) 100%);
    border-top: 1px solid rgba(118, 75, 162, 0.2);
    border-bottom: 1px solid rgba(118, 75, 162, 0.2);
}

/* Marquee Rows */
.marquee-row {
    display: flex;
    align-items: center;
    height: 120px;
    margin-bottom: 1rem;
    position: relative;
    width: 100%;
}

.marquee-row:last-child {
    margin-bottom: 0;
}

.marquee-row::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100px;
    height: 100%;
    background: linear-gradient(90deg, rgba(118, 75, 162, 0.1) 0%, transparent 100%);
    z-index: 2;
    pointer-events: none;
}

.marquee-row::after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 100px;
    height: 100%;
    background: linear-gradient(90deg, transparent 0%, rgba(118, 75, 162, 0.1) 100%);
    z-index: 2;
    pointer-events: none;
}

/* Marquee Track */
.marquee-track {
    display: flex;
    align-items: center;
    gap: 3rem;
    animation: marquee-scroll 30s linear infinite;
    white-space: nowrap;
}

.marquee-row-1 .marquee-track {
    animation-duration: 30s;
}

.marquee-row-2 .marquee-track {
    animation-duration: 40s;
    animation-direction: reverse;
}

.marquee-row-3 .marquee-track {
    animation-duration: 35s;
}

/* Logo Items */
.logo-item {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    height: 90px;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 12px;
    padding: 1rem;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    margin: 0 1.5rem;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(118, 75, 162, 0.15);
    box-shadow: 0 2px 8px rgba(118, 75, 162, 0.1);
}

.logo-item:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 16px rgba(118, 75, 162, 0.2);
    background: rgba(255, 255, 255, 1);
    border-color: rgba(118, 75, 162, 0.4);
}

.logo-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: all 0.3s ease;
    opacity: 1;
}

.logo-item:hover img {
    opacity: 1;
}

/* Marquee Animation */
@keyframes marquee-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Pause animation on hover */
.marquee-container:hover .marquee-track {
    animation-play-state: paused;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .marquee-container {
        padding: 1rem 0;
    }
    
    .marquee-row {
        height: 100px;
    }
    
    .logo-item {
        width: 100px;
        height: 50px;
        padding: 0.5rem;
        margin: 0 0.5rem;
    }
    
    .marquee-track {
        gap: 1rem;
    }
}

@media (max-width: 480px) {
    .marquee-row {
        height: 80px;
    }
    
    .logo-item {
        width: 80px;
        height: 40px;
        padding: 0.25rem;
        margin: 0 0.25rem;
    }
    
    .marquee-track {
        gap: 0.5rem;
    }
}

/* Responsive Design for Portfolio */
@media (max-width: 1024px) {
    .portfolio-stats {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 1.5rem;
    }
    
    .marquee-container {
        padding: 1.5rem 0;
    }
    
    .marquee-row {
        height: 120px;
    }
    
    .logo-item {
        width: 150px;
        height: 75px;
        padding: 0.75rem;
        margin: 0 1rem;
    }
    
    .marquee-track {
        gap: 1.5rem;
    }
}

@media (max-width: 768px) {
    .portfolio {
        padding: 4rem 0;
    }
    
    .portfolio-stats {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 1rem;
    }
    
    .stat-card {
        padding: 1.5rem;
    }
    
    .stat-content h3 {
        font-size: 2rem;
    }
    
    .showcase-header h3 {
        font-size: 1.75rem;
    }
    
    .showcase-header p {
        font-size: 1rem;
    }
    
    .marquee-container {
        padding: 1rem 0;
    }
    
    .marquee-row {
        height: 100px;
    }
    
    .logo-item {
        width: 120px;
        height: 60px;
        padding: 0.5rem;
        margin: 0 0.75rem;
    }
    
    .marquee-track {
        gap: 1rem;
    }
}

@media (max-width: 480px) {
    .portfolio-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .stat-card {
        padding: 1.5rem;
    }
    
    .stat-content h3 {
        font-size: 1.75rem;
    }
    
    .showcase-header h3 {
        font-size: 1.5rem;
    }
    
    .showcase-header p {
        font-size: 0.875rem;
    }
    
    .marquee-row {
        height: 80px;
    }
    
    .logo-item {
        width: 100px;
        height: 50px;
        padding: 0.5rem;
        margin: 0 0.5rem;
    }
    
    .marquee-track {
        gap: 0.75rem;
    }
}

/* Additional navigation animations and effects */
@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes navGlow {
    0%, 100% {
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    }
    50% {
        box-shadow: 0 8px 30px rgba(37, 99, 235, 0.15);
    }
}

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

/* Enhanced navigation effects */
.navbar:hover {
    animation: navGlow 2s ease-in-out infinite;
}

.nav-logo a:hover i {
    animation: logoPulse 1s ease-in-out;
}

/* Navigation link hover animations */
.nav-link {
    position: relative;
    overflow: hidden;
}

.nav-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.nav-link:hover::before {
    left: 100%;
}

/* Active navigation link styling */
.nav-link.active {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.15) 0%, rgba(118, 75, 162, 0.15) 100%);
    box-shadow: 0 4px 15px rgba(37, 99, 235, 0.2);
    transform: translateY(-1px);
}

.nav-link.active::after {
    width: 80%;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    box-shadow: 0 0 10px rgba(37, 99, 235, 0.5);
}

/* Mobile menu enhancements */
@media (max-width: 768px) {
    .nav-menu {
        background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.99) 100%);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        border-bottom: 1px solid rgba(37, 99, 235, 0.1);
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
    }

    .nav-menu.active {
        animation: slideIn 0.4s ease-out;
    }

    .nav-link {
        position: relative;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        border-left: 3px solid transparent;
    }

    .nav-link:hover {
        border-left-color: var(--brand-blue);
        background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
        transform: translateX(10px);
        padding-left: 2.5rem;
    }

    .nav-link.active {
        border-left-color: var(--brand-blue);
        background: linear-gradient(135deg, rgba(37, 99, 235, 0.15) 0%, rgba(118, 75, 162, 0.15) 100%);
        transform: translateX(15px);
        padding-left: 2.5rem;
    }
}

/* Navigation toggle button enhancements */
.nav-toggle {
    position: relative;
    overflow: hidden;
}

.nav-toggle::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    border-radius: var(--radius-md);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.nav-toggle:hover::before {
    opacity: 1;
}

/* Enhanced bar animations */
.bar {
    position: relative;
    overflow: hidden;
}

.bar::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.5s ease;
}

.nav-toggle:hover .bar::before {
    left: 100%;
}

/* Navigation scroll indicator */
.navbar::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    transition: width 0.3s ease;
}

.navbar.scrolled::after {
    width: 100%;
}

/* Navigation link stagger animation */
.nav-link {
    opacity: 0;
    animation: navFadeIn 0.6s ease forwards;
}

.nav-link:nth-child(1) { animation-delay: 0.1s; }
.nav-link:nth-child(2) { animation-delay: 0.2s; }
.nav-link:nth-child(3) { animation-delay: 0.3s; }
.nav-link:nth-child(4) { animation-delay: 0.4s; }
.nav-link:nth-child(5) { animation-delay: 0.5s; }
.nav-link:nth-child(6) { animation-delay: 0.6s; }
.nav-link:nth-child(7) { animation-delay: 0.7s; }
.nav-link:nth-child(8) { animation-delay: 0.8s; }
.nav-link:nth-child(9) { animation-delay: 0.9s; }

/* Navigation glow effect on hover */
.navbar:hover::after {
    opacity: 1;
    animation: navGlow 2s ease-in-out infinite;
}

/* Enhanced mobile menu transitions */
@media (max-width: 768px) {
    .nav-menu {
        transform: translateY(-100%) scale(0.95);
        opacity: 0;
        visibility: hidden;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .nav-menu.active {
        transform: translateY(0) scale(1);
        opacity: 1;
        visibility: visible;
    }

    .nav-link {
        transform: translateX(-20px);
        opacity: 0;
        transition: all 0.3s ease;
    }

    .nav-menu.active .nav-link {
        transform: translateX(0);
        opacity: 1;
    }

    .nav-menu.active .nav-link:nth-child(1) { transition-delay: 0.1s; }
    .nav-menu.active .nav-link:nth-child(2) { transition-delay: 0.2s; }
    .nav-menu.active .nav-link:nth-child(3) { transition-delay: 0.3s; }
    .nav-menu.active .nav-link:nth-child(4) { transition-delay: 0.4s; }
    .nav-menu.active .nav-link:nth-child(5) { transition-delay: 0.5s; }
    .nav-menu.active .nav-link:nth-child(6) { transition-delay: 0.6s; }
    .nav-menu.active .nav-link:nth-child(7) { transition-delay: 0.7s; }
    .nav-menu.active .nav-link:nth-child(8) { transition-delay: 0.8s; }
    .nav-menu.active .nav-link:nth-child(9) { transition-delay: 0.9s; }
    .nav-menu.active .nav-link:nth-child(10) { transition-delay: 1.0s; }
}

/* Ensure Contact link is always accessible on mobile */
@media (max-width: 768px) {
    .nav-link:last-child {
        border-bottom: none;
    }
    
    /* Ensure proper spacing for all nav links */
    .nav-link {
        flex-shrink: 0;
    }
}

/* Navigation focus states for accessibility */
.nav-link:focus {
    outline: 2px solid var(--brand-blue);
    outline-offset: 2px;
    border-radius: var(--radius-md);
}

.nav-toggle:focus {
    outline: 2px solid var(--brand-blue);
    outline-offset: 2px;
    border-radius: var(--radius-md);
}

/* Navigation loading state */
.navbar.loading {
    pointer-events: none;
    opacity: 0.8;
}

.navbar.loading::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, #2563eb 0%, #764ba2 100%);
    animation: loadingBar 2s ease-in-out infinite;
}

@keyframes loadingBar {
    0% { transform: translateX(-100%); }
    50% { transform: translateX(0); }
    100% { transform: translateX(100%); }
}

/* Custom service field styles */
.custom-service-field {
    margin-top: 1rem;
}

/* ===== FOUNDER SECTION RESPONSIVE ===== */
@media (max-width: 1024px) {
    .founder-hero {
        gap: 3rem;
    }
    
    .achievement-cards {
        gap: 1.5rem;
    }
    
    .founder-visionary {
        padding: 4rem 0;
    }
    
    .founder-title {
        font-size: 2.75rem;
    }
    
    .founder-name {
        font-size: 2.25rem;
    }
    
    .founder-stats {
        gap: 1.25rem;
    }
    
    .profile-card {
        padding: 2.5rem;
    }
    
    .founder-image {
        width: 190px;
        height: 260px;
    }
}

@media (max-width: 768px) {
    .founder-visionary {
        padding: 3rem 0;
    }
    
    .founder-title {
        font-size: 2.25rem;
        line-height: 1.2;
        margin-bottom: 1rem;
    }
    
    .founder-subtitle {
        font-size: 1.125rem;
        margin-bottom: 2rem;
    }
    
    .founder-hero {
        grid-template-columns: 1fr;
        gap: 2.5rem;
        margin-bottom: 4rem;
    }
    
    .achievement-cards {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .founder-name {
        font-size: 2rem;
        margin-bottom: 0.5rem;
    }
    
    .founder-role {
        font-size: 1rem;
        margin-bottom: 1.5rem;
    }
    
    .founder-stats {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .founder-stats .stat-item {
        padding: 1.25rem 0.75rem;
    }
    
    .stat-number {
        font-size: 2.75rem;
        margin-bottom: 0.25rem;
    }
    
    .stat-label {
        font-size: 1rem;
    }
    
    .story-container {
        padding: 1.5rem;
    }
    
    .story-header h3 {
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }
    
    .story-paragraph {
        font-size: 1rem;
        line-height: 1.6;
        margin-bottom: 1rem;
    }
    
    .founder-certifications {
        gap: 0.75rem;
        justify-content: center;
        flex-wrap: wrap;
    }
    
    .certification-logo-small {
        width: 75px;
        height: 75px;
    }
    
    .certification-logo-large {
        width: 75px;
        height: 75px;
        transform: scale(1.33);
    }
    
    /* Placeholder logo styles removed - now using actual certification logos */
    
    /* Improve profile card on mobile */
    .profile-card {
        padding: 2rem;
    }
    
    .founder-image {
        width: 180px;
        height: 250px;
    }
    
    /* Improve achievement cards on mobile */
    .achievement-card {
        padding: 1.5rem;
    }
    
    .card-icon {
        width: 50px;
        height: 50px;
        margin-bottom: 1rem;
    }
    
    .card-icon i {
        font-size: 1.25rem;
    }
    
    .card-content h4 {
        font-size: 1.125rem;
        margin-bottom: 0.5rem;
    }
    
    .card-content p {
        font-size: 0.875rem;
        line-height: 1.4;
    }
}

@media (max-width: 480px) {
    .founder-visionary {
        padding: 2rem 0;
    }
    
    .founder-title {
        font-size: 1.875rem;
        line-height: 1.2;
        margin-bottom: 0.75rem;
    }
    
    .founder-subtitle {
        font-size: 1rem;
        margin-bottom: 1.5rem;
    }
    
    .founder-hero {
        gap: 2rem;
        margin-bottom: 3rem;
    }
    
    .founder-name {
        font-size: 1.75rem;
        margin-bottom: 0.375rem;
    }
    
    .founder-role {
        font-size: 0.95rem;
        margin-bottom: 1.25rem;
    }
    
    .founder-stats {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }
    
    .founder-stats .stat-item {
        padding: 1rem 0.5rem;
    }
    
    .stat-number {
        font-size: 2.25rem;
        margin-bottom: 0.125rem;
    }
    
    .stat-label {
        font-size: 0.9rem;
    }
    
    .profile-card {
        padding: 1.5rem;
    }
    
    .founder-image {
        width: 160px;
        height: 220px;
    }
    
    .achievement-card {
        padding: 1.25rem;
    }
    
    .card-icon {
        width: 45px;
        height: 45px;
        margin-bottom: 0.75rem;
    }
    
    .card-icon i {
        font-size: 1.125rem;
    }
    
    .card-content h4 {
        font-size: 1rem;
        margin-bottom: 0.375rem;
    }
    
    .card-content p {
        font-size: 0.8rem;
        line-height: 1.3;
    }
    
    .story-container {
        padding: 1.25rem;
    }
    
    .story-header {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
        margin-bottom: 1.5rem;
    }
    
    .story-header h3 {
        font-size: 1.375rem;
        margin-bottom: 0.75rem;
    }
    
    .quote-icon {
        width: 35px;
        height: 35px;
    }
    
    .quote-icon i {
        font-size: 0.9rem;
    }
    
    .story-paragraph {
        font-size: 0.95rem;
        line-height: 1.5;
        margin-bottom: 0.75rem;
    }
    
    .founder-certifications {
        gap: 0.5rem;
        justify-content: center;
    }
    
    .certification-logo-small {
        width: 65px;
        height: 65px;
    }
    
    .certification-logo-large {
        width: 65px;
        height: 65px;
        transform: scale(1.33);
    }
    
    /* Placeholder logo styles removed - now using actual certification logos */
}


/* (Reverted hero polish block to restore previous layout) */


/* ===== FOUNDER PHASE 2 INTERACTIVITY ===== */
.founder-visionary .floating-particles .particle,
.founder-visionary .geometric-shapes .shape {
    will-change: transform;
}

.founder-visionary::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    /* Ambient glow that follows the cursor */
    background: radial-gradient(450px at var(--spotlight-x, 50%) var(--spotlight-y, 50%), rgba(124, 58, 237, 0.14), transparent 60%);
    mix-blend-mode: screen;
    z-index: 2;
}

.founder-visionary .container {
    position: relative;
    z-index: 3;
}

.profile-card,
.achievement-card,
.expertise-card,
.story-container {
    transform-style: preserve-3d;
    will-change: transform;
}

.scroll-reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.scroll-reveal.revealed {
    opacity: 1;
    transform: translateY(0);
}

/* Programme Poster Images */
.programme-poster {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 300px;
    max-height: 500px;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
    margin-bottom: 1rem;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
}

.programme-poster-img {
    width: 100%;
    height: auto;
    max-height: 500px;
    object-fit: contain;
    transition: transform 0.3s ease;
    background: #f8fafc;
}

.programme-card:hover .programme-poster-img {
    transform: scale(1.05);
}

/* Programme Poster Container with Footer */
.programme-poster-container {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.programme-poster {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 300px;
    max-height: 500px;
    border-radius: 0;
    overflow: hidden;
    margin-bottom: 0;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
}

.programme-poster-img {
    width: 100%;
    height: auto;
    max-height: 500px;
    object-fit: contain;
    transition: transform 0.3s ease;
    background: #f8fafc;
    cursor: pointer;
}

.hidden-poster {
    display: none !important;
}

/* Poster Image Containers in Modal */
.poster-image-container {
    margin-bottom: 2rem;
    text-align: center;
}

.poster-image-container:last-child {
    margin-bottom: 0;
}

.poster-zoom-image {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.poster-zoom-image:hover {
    transform: scale(1.02);
}

.programme-card:hover .programme-poster-img {
    transform: scale(1.05);
}

/* Programme Footer with Icon and Badge */
.programme-poster-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.95) 100%);
    backdrop-filter: blur(10px);
    border-top: 1px solid rgba(37, 99, 235, 0.1);
}

.programme-icon-standalone {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #2563eb 0%, #764ba2 100%);
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.programme-card:hover .programme-icon-standalone {
    transform: scale(1.1);
}

.programme-icon-standalone i {
    font-size: 1.1rem;
    color: #ffffff;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
    display: block;
    text-align: center;
    line-height: 1;
}

/* Programme Badge Standalone (in footer) */
.programme-badge-standalone {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: white;
    border-radius: var(--radius-md);
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 0.5rem 1rem;
    flex-shrink: 0;
}

/* Responsive adjustments for poster images */
@media (max-width: 768px) {
    .programme-poster {
        min-height: 250px;
        max-height: 400px;
    }
    
    .programme-poster-footer {
        padding: 0.75rem;
    }
    
    .programme-icon-standalone {
        width: 40px;
        height: 40px;
    }
    
    .programme-icon-standalone i {
        font-size: 1rem;
    }
    
    .programme-badge-standalone {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem;
    }
}

@media (max-width: 480px) {
    .programme-poster {
        min-height: 200px;
        max-height: 320px;
    }
    
    .programme-poster-footer {
        padding: 0.5rem;
    }
    
    .programme-icon-standalone {
        width: 35px;
        height: 35px;
    }
    
    .programme-icon-standalone i {
        font-size: 0.9rem;
    }
    
    .programme-badge-standalone {
        font-size: 0.625rem;
        padding: 0.25rem 0.5rem;
    }
}

/* Programme Poster in Registration Page */
.job-details-card .programme-poster {
    border-radius: 12px 12px 0 0;
    margin-bottom: 1.5rem;
}

.job-details-card .programme-poster-img {
    border-radius: 12px 12px 0 0;
}

.job-details-card .programme-poster-overlay {
    border-radius: 50%;
}

/* Poster Modal Lightbox */
.poster-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.poster-modal.show {
    display: flex;
    opacity: 1;
}

.poster-modal-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(5px);
}

.poster-modal-content {
    position: relative;
    width: 95%;
    max-width: 1400px;
    height: 95%;
    max-height: 90vh;
    margin: auto;
    background: white;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transform: scale(0.9);
    transition: transform 0.3s ease;
}

.poster-modal.show .poster-modal-content {
    transform: scale(1);
}

.poster-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 2rem;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border-bottom: 1px solid rgba(37, 99, 235, 0.1);
}

.poster-modal-header h3 {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1f2937;
}

.poster-modal-close {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #6b7280;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.poster-modal-close:hover {
    background: rgba(239, 68, 68, 0.1);
    color: #ef4444;
    transform: scale(1.1);
}

.poster-modal-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 1rem;
    background: #f8fafc;
    min-height: 0;
}

.poster-zoom-container {
    flex: 1;
    display: block;
    overflow: auto;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    position: relative;
    cursor: grab;
    padding: 1rem;
    min-height: 0;
}

.poster-zoom-container:active {
    cursor: grabbing;
}

.poster-zoom-image {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: none;
    object-fit: contain;
    transition: transform 0.3s ease;
    cursor: grab;
    display: block;
    margin: 0 auto;
}

.poster-zoom-image:active {
    cursor: grabbing;
}

.poster-zoom-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
    padding: 1rem;
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.zoom-btn {
    background: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);
    color: white;
    border: none;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
}

.zoom-btn:hover {
    background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
}

.zoom-btn:active {
    transform: translateY(0);
}

.zoom-level {
    font-weight: 600;
    color: #374151;
    min-width: 60px;
    text-align: center;
    font-size: 0.9rem;
}

.zoom-reset {
    background: linear-gradient(135deg, #10b981 0%, #34d399 100%);
}

.zoom-reset:hover {
    background: linear-gradient(135deg, #059669 0%, #10b981 100%);
}

/* Make poster images clickable */
.programme-poster-img {
    cursor: pointer;
    transition: all 0.3s ease;
}

.programme-poster-img:hover {
    transform: scale(1.02);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* Responsive modal */
@media (max-width: 768px) {
    .poster-modal-content {
        width: 98%;
        height: 98%;
        margin: 1% auto;
        max-height: none;
    }
    
    .poster-modal-header {
        padding: 1rem 1.5rem;
    }
    
    .poster-modal-header h3 {
        font-size: 1.25rem;
    }
    
    .poster-modal-body {
        padding: 1rem;
    }
    
    .poster-zoom-controls {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    
    .zoom-btn {
        padding: 0.5rem 0.75rem;
        min-width: 40px;
        height: 40px;
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .poster-modal-content {
        width: 100%;
        height: 100%;
        margin: 0;
        border-radius: 0;
        max-height: none;
    }
    
    .poster-modal-header {
        padding: 0.75rem 1rem;
    }
    
    .poster-modal-header h3 {
        font-size: 1.125rem;
    }
    
    .poster-modal-body {
        padding: 0.75rem;
    }
}

/* Job Company Logo */
.job-logo {
    width: 100%;
    min-height: 120px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 1rem;
    padding: 1rem;
}

/* Job icon animations - same as programme icons */
.job-icon {
    animation: job-icon-float 3s ease-in-out infinite;
}

.job-card:hover .job-icon {
    animation: job-icon-pulse 0.6s ease-in-out;
}

@keyframes job-icon-float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-5px);
    }
}

@keyframes job-icon-pulse {
    0% {
        transform: scale(1) rotate(0deg);
    }
    50% {
        transform: scale(1.2) rotate(5deg);
    }
    100% {
        transform: scale(1.1) rotate(0deg);
    }
}

.job-logo-img {
    max-width: 200px;
    max-height: 100px;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.company-name {
    margin-top: 0.5rem;
    text-align: left;
}

.company-name span {
    font-size: 1rem;
    font-weight: 600;
    color: #374151;
    text-align: center;
    display: block;
}

.default-logo {
    width: 200px;
    height: 100px;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border: 2px dashed #cbd5e1;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.default-logo i {
    font-size: 3rem;
    color: #94a3b8;
}

.job-card:hover .job-poster-img {
    transform: scale(1.1);
}



/* Job Poster in Application Page */
.job-details-card .job-poster {
    border-radius: 12px 12px 0 0;
    margin-bottom: 1.5rem;
}

.job-details-card .job-poster-img {
    border-radius: 12px 12px 0 0;
}

.job-details-card .job-poster-overlay {
    border-radius: 50%;
}

/* Responsive adjustments for job company logos */
@media (max-width: 768px) {
    .job-logo {
        min-height: 110px;
        padding: 0.75rem;
    }
    
    .job-logo-img {
        max-width: 180px;
        max-height: 90px;
    }
    
    .company-name span {
        font-size: 0.875rem;
    }
    
    .default-logo {
        width: 180px;
        height: 90px;
    }
    
    .default-logo i {
        font-size: 2.5rem;
    }
}

@media (max-width: 480px) {
    .job-logo {
        min-height: 100px;
        padding: 0.5rem;
    }
    
    .job-logo-img {
        max-width: 160px;
        max-height: 80px;
    }
    
    .company-name span {
        font-size: 0.75rem;
    }
    
    .default-logo {
        width: 160px;
        height: 80px;
    }
    
    .default-logo i {
        font-size: 2rem;
    }
}

/* ===== TRAINING PROGRAMMES SECTION ===== */
.training-programmes {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 25%, #312e81 50%, #3730a3 100%);
    color: white;
    overflow: hidden;
}

.training-programmes::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.1) 0%, rgba(30, 27, 75, 0.1) 100%);
    z-index: 0;
}

.training-programmes .container {
    position: relative;
    z-index: 2;
}

/* Enhanced Animated Background for Training Programmes */
.training-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

/* Animated Gradient Waves */
.training-gradient-waves {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.training-wave {
    position: absolute;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, 
        rgba(15, 23, 42, 0.02) 0%, 
        rgba(30, 27, 75, 0.03) 25%, 
        rgba(49, 46, 129, 0.02) 50%, 
        rgba(55, 48, 163, 0.03) 75%, 
        rgba(30, 27, 75, 0.02) 100%);
    border-radius: 50%;
    animation: training-wave-float 25s ease-in-out infinite;
}

.training-wave-1 {
    top: -50%;
    left: -50%;
    animation-delay: 0s;
}

.training-wave-2 {
    top: -30%;
    right: -50%;
    animation-delay: 8s;
}

.training-wave-3 {
    bottom: -50%;
    left: -30%;
    animation-delay: 16s;
}

@keyframes training-wave-float {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg);
        opacity: 0.3;
    }
    33% {
        transform: translate(30px, -30px) rotate(120deg);
        opacity: 0.5;
    }
    66% {
        transform: translate(-20px, 20px) rotate(240deg);
        opacity: 0.4;
    }
}

/* Floating Achievement Shapes */
.training-achievement-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.achievement-shape {
    position: absolute;
    background: rgba(255, 215, 0, 0.15);
    border: 2px solid rgba(255, 99, 71, 0.4);
    animation: achievement-float 20s ease-in-out infinite;
    box-shadow: 0 0 15px rgba(255, 215, 0, 0.2);
}

.achievement-shape-1 {
    width: 120px;
    height: 120px;
    top: 10%;
    left: 10%;
    border-radius: 50%;
    animation-delay: 0s;
    background: rgba(255, 215, 0, 0.15);
    border: 2px solid rgba(255, 99, 71, 0.4);
    box-shadow: 0 0 15px rgba(255, 215, 0, 0.2);
}

.achievement-shape-2 {
    width: 80px;
    height: 80px;
    top: 60%;
    right: 15%;
    transform: rotate(45deg);
    animation-delay: 5s;
    background: rgba(255, 99, 71, 0.15);
    border: 2px solid rgba(255, 215, 0, 0.4);
    box-shadow: 0 0 15px rgba(255, 99, 71, 0.2);
}

.achievement-shape-3 {
    width: 100px;
    height: 100px;
    bottom: 20%;
    left: 20%;
    border-radius: 20px;
    animation-delay: 10s;
    background: rgba(220, 20, 60, 0.15);
    border: 2px solid rgba(255, 215, 0, 0.4);
    box-shadow: 0 0 15px rgba(220, 20, 60, 0.2);
}

.achievement-shape-4 {
    width: 60px;
    height: 60px;
    top: 30%;
    right: 30%;
    border-radius: 50%;
    animation-delay: 15s;
    background: rgba(255, 215, 0, 0.15);
    border: 2px solid rgba(255, 99, 71, 0.4);
    box-shadow: 0 0 15px rgba(255, 215, 0, 0.2);
}



.achievement-shape-3 {
    width: 100px;
    height: 100px;
    bottom: 20%;
    left: 20%;
    border-radius: 20px;
    animation-delay: 10s;
}

.achievement-shape-4 {
    width: 60px;
    height: 60px;
    top: 30%;
    right: 30%;
    border-radius: 50%;
    animation-delay: 15s;
}

@keyframes achievement-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg) scale(1);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-40px) rotate(180deg) scale(1.1);
        opacity: 0.7;
    }
}

/* Dynamic Learning Elements */
.training-learning-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.learning-dot {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    animation: learning-pulse 4s ease-in-out infinite;
}

.learning-dot-1 {
    top: 25%;
    left: 25%;
    animation-delay: 0s;
    background: rgba(255, 215, 0, 0.6);
}

.learning-dot-2 {
    top: 45%;
    right: 30%;
    animation-delay: 1.5s;
    background: rgba(255, 99, 71, 0.6);
}

.learning-dot-3 {
    bottom: 35%;
    left: 40%;
    animation-delay: 3s;
    background: rgba(220, 20, 60, 0.6);
}



.learning-dot-2 {
    top: 45%;
    right: 30%;
    animation-delay: 1.5s;
}

.learning-dot-3 {
    bottom: 35%;
    left: 40%;
    animation-delay: 3s;
}

@keyframes learning-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
    }
    50% {
        transform: scale(1.5);
        opacity: 1;
    }
}

.learning-line {
    position: absolute;
    height: 2px;
    animation: learning-line-flow 6s ease-in-out infinite;
}

.learning-line-1 {
    width: 150px;
    top: 40%;
    left: 20%;
    animation-delay: 0s;
    background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.4), transparent);
}

.learning-line-2 {
    width: 100px;
    bottom: 30%;
    right: 25%;
    animation-delay: 3s;
    background: linear-gradient(90deg, transparent, rgba(255, 99, 71, 0.4), transparent);
}



@keyframes learning-line-flow {
    0%, 100% {
        transform: translateX(-100%);
        opacity: 0;
    }
    50% {
        transform: translateX(100%);
        opacity: 1;
    }
}

/* Success Flow Elements */
.training-success-flow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.training-success-flow .success-flow-element {
    position: absolute;
    width: 4px;
    height: 4px;
    background: rgba(255, 99, 71, 0.6);
    border-radius: 50%;
    animation: success-flow 8s ease-in-out infinite;
}

.training-success-flow .success-flow-element:nth-child(1) {
    top: 20%;
    left: 15%;
    animation-delay: 0s;
}

.training-success-flow .success-flow-element:nth-child(2) {
    top: 50%;
    right: 20%;
    animation-delay: 2.5s;
}

.training-success-flow .success-flow-element:nth-child(3) {
    bottom: 25%;
    left: 35%;
    animation-delay: 5s;
}

@keyframes success-flow {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-30px) scale(1.5);
        opacity: 1;
    }
}

.training-programmes .section-header {
    text-align: center;
    margin-bottom: 4rem;
    animation: fadeInUp 1s ease-out 0.2s both;
}

.training-programmes .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.2), rgba(255, 99, 71, 0.2));
    border: 1px solid rgba(255, 215, 0, 0.3);
    border-radius: 50px;
    padding: 0.75rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff7ed;
    margin-bottom: 1.5rem;
}

.training-programmes .section-title {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: white;
}

.training-programmes .section-subtitle {
    font-size: 1.25rem;
    color: white;
    max-width: 600px;
    margin: 0 auto;
}

/* Mobile responsive training programmes section */
@media (max-width: 768px) {
    .training-programmes .section-title {
        font-size: 2rem;
    }
    
    .training-programmes .section-subtitle {
        font-size: 1.1rem;
        padding: 0 1rem;
    }
    
    .training-programmes {
        padding: 3rem 1rem;
    }
}

@media (max-width: 480px) {
    .training-programmes .section-title {
        font-size: 1.75rem;
    }
    
    .training-programmes .section-subtitle {
        font-size: 1rem;
        padding: 0 0.5rem;
    }
    
    .training-programmes {
        padding: 2rem 0.5rem;
    }
}

.programmes-preview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    margin: 3rem 0;
}

/* Mobile responsive programmes preview */
@media (max-width: 768px) {
    .programmes-preview {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        margin: 2rem 0;
    }
    
    .programme-highlight {
        padding: 2rem;
    }
    
    .highlight-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .programme-highlight h3 {
        font-size: 1.3rem;
    }
}

@media (max-width: 480px) {
    .programmes-preview {
        gap: 1rem;
        margin: 1.5rem 0;
    }
    
    .programme-highlight {
        padding: 1.5rem;
    }
    
    .highlight-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .programme-highlight h3 {
        font-size: 1.2rem;
    }
}

.programme-highlight {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border-radius: 16px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    text-align: center;
    animation: fadeInUp 1s ease-out both;
}

.programme-highlight:nth-child(1) { animation-delay: 0.2s; }
.programme-highlight:nth-child(2) { animation-delay: 0.4s; }
.programme-highlight:nth-child(3) { animation-delay: 0.6s; }

.programme-highlight::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.2), transparent);
    transition: left 0.5s ease;
}

.programme-highlight:hover::before {
    left: 100%;
}

.programme-highlight:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 25px 50px rgba(59, 130, 246, 0.3);
    background: rgba(255, 255, 255, 0.2);
}

.highlight-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 1.75rem;
    transition: all 0.3s ease;
    animation: float 3s ease-in-out infinite;
}

.programme-highlight:nth-child(1) .highlight-icon { animation-delay: 0s; }
.programme-highlight:nth-child(2) .highlight-icon { animation-delay: 1s; }
.programme-highlight:nth-child(3) .highlight-icon { animation-delay: 2s; }

.programme-highlight:hover .highlight-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(59, 130, 246, 0.3);
}

.programme-highlight h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: white;
    margin-bottom: 1rem;
}

.programme-highlight p {
    color: white;
    line-height: 1.6;
    font-size: 1rem;
}

.preview-features {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.feature-tag {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    color: #2563eb;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 500;
    border: 1px solid rgba(37, 99, 235, 0.2);
}

.programmes-cta {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border-radius: 20px;
    padding: 3rem;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
    margin-top: 3rem;
    animation: fadeInUp 1s ease-out 0.8s both;
}

.programmes-cta .cta-glow {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(99, 102, 241, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: -1;
}

.programmes-cta:hover .cta-glow {
    opacity: 1;
}

.programmes-cta .cta-content h3 {
    color: white;
    font-size: 2rem;
    margin-bottom: 1rem;
}

.programmes-cta .cta-content p {
    color: white;
    font-size: 1.125rem;
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.programmes-cta .cta-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.programmes-cta .btn-primary {
    background: linear-gradient(135deg, #ffd700 0%, #ff6347 100%);
    color: white;
    border: none;
}

.programmes-cta .btn-outline {
    background: transparent;
    color: #ffd700;
    border: 2px solid #ffd700;
}

.programmes-cta .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 40px rgba(255, 215, 0, 0.3);
}

/* ===== CAREER OPPORTUNITIES SECTION ===== */
.career-opportunities {
    position: relative;
    padding: 6rem 0;
    background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
    color: white;
    overflow: hidden;
}

.career-opportunities::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    z-index: 0;
}

.career-opportunities .container {
    position: relative;
    z-index: 2;
}

/* Enhanced Animated Background for Career Opportunities */
.career-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

/* Animated Gradient Waves */
.career-gradient-waves {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.career-wave {
    position: absolute;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, 
        rgba(15, 23, 42, 0.02) 0%, 
        rgba(30, 27, 75, 0.03) 25%, 
        rgba(49, 46, 129, 0.02) 50%, 
        rgba(55, 48, 163, 0.03) 75%, 
        rgba(30, 27, 75, 0.02) 100%);
    border-radius: 50%;
    animation: career-wave-float 25s ease-in-out infinite;
}

.career-wave-1 {
    top: -50%;
    left: -50%;
    animation-delay: 0s;
}

.career-wave-2 {
    top: -30%;
    right: -50%;
    animation-delay: 8s;
}

.career-wave-3 {
    bottom: -50%;
    left: -30%;
    animation-delay: 16s;
}

@keyframes career-wave-float {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg);
        opacity: 0.3;
    }
    33% {
        transform: translate(30px, -30px) rotate(120deg);
        opacity: 0.5;
    }
    66% {
        transform: translate(-20px, 20px) rotate(240deg);
        opacity: 0.4;
    }
}

/* Floating Career Path Elements */
.career-opportunity-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.opportunity-shape {
    position: absolute;
    animation: opportunity-float 20s ease-in-out infinite;
}

.opportunity-shape-1 {
    width: 100px;
    height: 100px;
    top: 15%;
    left: 15%;
    border-radius: 50%;
    animation-delay: 0s;
    background: rgba(59, 130, 246, 0.15);
    border: 2px solid rgba(99, 102, 241, 0.4);
    box-shadow: 0 0 15px rgba(59, 130, 246, 0.2);
}

.opportunity-shape-2 {
    width: 60px;
    height: 60px;
    top: 55%;
    right: 20%;
    animation-delay: 5s;
    background: rgba(99, 102, 241, 0.15);
    border: 2px solid rgba(139, 92, 246, 0.4);
    box-shadow: 0 0 15px rgba(99, 102, 241, 0.2);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.opportunity-shape-3 {
    width: 80px;
    height: 80px;
    bottom: 25%;
    left: 25%;
    animation-delay: 10s;
    background: rgba(139, 92, 246, 0.15);
    border: 2px solid rgba(168, 85, 247, 0.4);
    box-shadow: 0 0 15px rgba(139, 92, 246, 0.2);
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
}

.opportunity-shape-4 {
    width: 70px;
    height: 70px;
    top: 35%;
    right: 35%;
    animation-delay: 15s;
    background: rgba(168, 85, 247, 0.15);
    border: 2px solid rgba(59, 130, 246, 0.4);
    box-shadow: 0 0 15px rgba(168, 85, 247, 0.2);
    clip-path: polygon(20% 0%, 80% 0%, 100% 20%, 100% 80%, 80% 100%, 20% 100%, 0% 80%, 0% 20%);
}



@keyframes opportunity-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg) scale(1);
        opacity: 0.3;
    }
    50% {
        transform: translateY(-40px) rotate(180deg) scale(1.1);
        opacity: 0.7;
    }
}

/* Dynamic Career Path Elements */
.career-career-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.career-dot {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    animation: career-pulse 4s ease-in-out infinite;
}

.career-dot-1 {
    top: 25%;
    left: 25%;
    animation-delay: 0s;
    background: rgba(59, 130, 246, 0.6);
}

.career-dot-2 {
    top: 45%;
    right: 30%;
    animation-delay: 1.5s;
    background: rgba(99, 102, 241, 0.6);
}

.career-dot-3 {
    bottom: 35%;
    left: 40%;
    animation-delay: 3s;
    background: rgba(139, 92, 246, 0.6);
}



.career-dot-2 {
    top: 45%;
    right: 30%;
    animation-delay: 1.5s;
}

.career-dot-3 {
    bottom: 35%;
    left: 40%;
    animation-delay: 3s;
}

@keyframes career-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.6;
    }
    50% {
        transform: scale(1.5);
        opacity: 1;
    }
}

.career-line {
    position: absolute;
    height: 2px;
    animation: career-line-flow 6s ease-in-out infinite;
}

.career-line-1 {
    width: 150px;
    top: 40%;
    left: 20%;
    animation-delay: 0s;
    background: linear-gradient(90deg, transparent, rgba(251, 191, 36, 0.4), transparent);
}

.career-line-2 {
    width: 100px;
    bottom: 30%;
    right: 25%;
    animation-delay: 3s;
    background: linear-gradient(90deg, transparent, rgba(245, 158, 11, 0.4), transparent);
}



@keyframes career-line-flow {
    0%, 100% {
        transform: translateX(-100%);
        opacity: 0;
    }
    50% {
        transform: translateX(100%);
        opacity: 1;
    }
}

/* Career Growth Elements */
.career-success-flow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.career-success-flow .success-flow-element {
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    animation: career-success-flow 8s ease-in-out infinite;
}

.career-success-flow .success-flow-element:nth-child(1) {
    top: 20%;
    left: 15%;
    animation-delay: 0s;
    background: rgba(251, 191, 36, 0.6);
}

.career-success-flow .success-flow-element:nth-child(2) {
    top: 50%;
    right: 20%;
    animation-delay: 2.5s;
    background: rgba(245, 158, 11, 0.6);
}

.career-success-flow .success-flow-element:nth-child(3) {
    bottom: 25%;
    left: 35%;
    animation-delay: 5s;
    background: rgba(217, 119, 6, 0.6);
}

/* Career Path Connectors */
.career-path-connectors {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.career-connector {
    position: absolute;
    width: 3px;
    height: 3px;
    background: rgba(251, 191, 36, 0.4);
    border-radius: 50%;
    animation: career-connector-pulse 5s ease-in-out infinite;
}

.career-connector:nth-child(1) {
    top: 30%;
    left: 40%;
    animation-delay: 0s;
}

.career-connector:nth-child(2) {
    top: 60%;
    right: 35%;
    animation-delay: 1.5s;
}

.career-connector:nth-child(3) {
    bottom: 40%;
    left: 60%;
    animation-delay: 3s;
}

@keyframes career-connector-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.4;
    }
    50% {
        transform: scale(2);
        opacity: 0.8;
    }
}

/* Career Opportunity Particles */
.career-opportunity-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.career-particle {
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    animation: career-particle-float 12s ease-in-out infinite;
}

.career-particle-1 {
    top: 20%;
    left: 20%;
    animation-delay: 0s;
    background: rgba(251, 191, 36, 0.7);
    box-shadow: 0 0 10px rgba(251, 191, 36, 0.5);
}

.career-particle-2 {
    top: 60%;
    right: 25%;
    animation-delay: 2.5s;
    background: rgba(245, 158, 11, 0.7);
    box-shadow: 0 0 10px rgba(245, 158, 11, 0.5);
}

.career-particle-3 {
    bottom: 30%;
    left: 35%;
    animation-delay: 5s;
    background: rgba(217, 119, 6, 0.7);
    box-shadow: 0 0 10px rgba(217, 119, 6, 0.5);
}

.career-particle-4 {
    top: 40%;
    right: 40%;
    animation-delay: 7.5s;
    background: rgba(251, 191, 36, 0.7);
    box-shadow: 0 0 10px rgba(251, 191, 36, 0.5);
}

.career-particle-5 {
    bottom: 50%;
    left: 60%;
    animation-delay: 10s;
    background: rgba(245, 158, 11, 0.7);
    box-shadow: 0 0 10px rgba(245, 158, 11, 0.5);
}

@keyframes career-particle-float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.7;
    }
    25% {
        transform: translateY(-20px) rotate(90deg);
        opacity: 1;
    }
    50% {
        transform: translateY(-10px) rotate(180deg);
        opacity: 0.8;
    }
    75% {
        transform: translateY(-30px) rotate(270deg);
        opacity: 0.9;
    }
}

/* Career Network Shapes */
.career-network-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.network-shape {
    position: absolute;
    animation: network-shape-rotate 15s ease-in-out infinite;
}

.network-shape-1 {
    width: 80px;
    height: 80px;
    top: 15%;
    right: 15%;
    animation-delay: 0s;
    background: rgba(251, 191, 36, 0.1);
    border: 2px solid rgba(245, 158, 11, 0.3);
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.network-shape-2 {
    width: 60px;
    height: 60px;
    bottom: 20%;
    right: 30%;
    animation-delay: 5s;
    background: rgba(245, 158, 11, 0.1);
    border: 2px solid rgba(217, 119, 6, 0.3);
    clip-path: polygon(20% 0%, 0% 20%, 30% 50%, 0% 80%, 20% 100%, 50% 70%, 80% 100%, 100% 80%, 70% 50%, 100% 20%, 80% 0%, 50% 30%);
}

.network-shape-3 {
    width: 70px;
    height: 70px;
    top: 70%;
    left: 20%;
    animation-delay: 10s;
    background: rgba(217, 119, 6, 0.1);
    border: 2px solid rgba(251, 191, 36, 0.3);
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
}

@keyframes network-shape-rotate {
    0%, 100% {
        transform: rotate(0deg) scale(1);
        opacity: 0.3;
    }
    25% {
        transform: rotate(90deg) scale(1.1);
        opacity: 0.5;
    }
    50% {
        transform: rotate(180deg) scale(0.9);
        opacity: 0.4;
    }
    75% {
        transform: rotate(270deg) scale(1.05);
        opacity: 0.6;
    }
}

/* ===== ADVANCED CONTACT ANIMATIONS ===== */

/* Mouse Following Particles */
.mouse-following-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}

.mouse-particle {
    position: absolute;
    width: 4px;
    height: 4px;
    background: linear-gradient(45deg, #4dd0e1, #0097a7);
    border-radius: 50%;
    opacity: 0;
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    box-shadow: 0 0 8px rgba(77, 208, 225, 0.6);
    will-change: transform, opacity;
}

.mouse-particle:nth-child(1) { transition-delay: 0s; }
.mouse-particle:nth-child(2) { transition-delay: 0.05s; }
.mouse-particle:nth-child(3) { transition-delay: 0.1s; }
.mouse-particle:nth-child(4) { transition-delay: 0.15s; }
.mouse-particle:nth-child(5) { transition-delay: 0.2s; }

.mouse-particle.active {
    opacity: 1;
    transform: scale(1.5);
}

/* Interactive Glow Effect */
.interactive-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 5;
    background: radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%), 
                rgba(77, 208, 225, 0.1) 0%, 
                rgba(0, 151, 167, 0.05) 30%, 
                transparent 70%);
    opacity: 0;
    transition: opacity 0.5s ease;
}

.interactive-glow.active {
    opacity: 1;
}

/* Parallax Wave Layer */
.parallax-wave-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: hidden;
}

.parallax-wave {
    position: absolute;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, 
        rgba(224, 242, 254, 0.05) 0%, 
        rgba(179, 229, 252, 0.03) 25%, 
        rgba(77, 208, 225, 0.04) 50%, 
        rgba(0, 151, 167, 0.03) 75%, 
        rgba(0, 96, 100, 0.05) 100%);
    border-radius: 50%;
    animation: parallax-wave-float 25s ease-in-out infinite;
}

.parallax-wave-1 {
    top: -50%;
    left: -50%;
    animation-delay: 0s;
    transform: translateZ(-10px);
}

.parallax-wave-2 {
    top: -30%;
    right: -50%;
    animation-delay: 12s;
    transform: translateZ(-20px);
}

@keyframes parallax-wave-float {
    0%, 100% {
        transform: translateZ(-10px) scale(1) rotate(0deg);
        opacity: 0.3;
    }
    33% {
        transform: translateZ(-10px) scale(1.2) rotate(120deg);
        opacity: 0.5;
    }
    66% {
        transform: translateZ(-10px) scale(0.8) rotate(240deg);
        opacity: 0.4;
    }
}

/* Enhanced Contact Particle Animations */
.contact-particle {
    position: absolute;
    background: linear-gradient(45deg, rgba(224, 242, 254, 0.2), rgba(77, 208, 225, 0.2));
    border-radius: 50%;
    animation: float-contact-particle 8s ease-in-out infinite;
    transition: all 0.3s ease;
}

.contact-particle:hover {
    transform: scale(1.5);
    background: linear-gradient(45deg, rgba(77, 208, 225, 0.4), rgba(0, 151, 167, 0.4));
    box-shadow: 0 0 20px rgba(77, 208, 225, 0.6);
}

/* Enhanced Contact Shape Animations */
.contact-shape {
    position: absolute;
    background: rgba(77, 208, 225, 0.1);
    border: 1px solid rgba(77, 208, 225, 0.2);
    animation: float-contact-shape 10s ease-in-out infinite;
    transition: all 0.3s ease;
    cursor: pointer;
}

.contact-shape:hover {
    background: rgba(77, 208, 225, 0.2);
    border-color: rgba(77, 208, 225, 0.4);
    transform: scale(1.2) rotate(45deg);
    box-shadow: 0 0 25px rgba(77, 208, 225, 0.4);
}



.career-success-flow .success-flow-element:nth-child(2) {
    top: 50%;
    right: 20%;
    animation-delay: 2.5s;
}

.career-success-flow .success-flow-element:nth-child(3) {
    bottom: 25%;
    left: 35%;
    animation-delay: 5s;
}

@keyframes career-success-flow {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.6;
    }
    50% {
        transform: translateY(-30px) scale(1.5);
        opacity: 1;
    }
}

.career-opportunities .section-header {
    text-align: center;
    margin-bottom: 4rem;
    animation: fadeInUp 1s ease-out 0.2s both;
}

.career-opportunities .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.2), rgba(118, 75, 162, 0.2));
    border: 1px solid rgba(37, 99, 235, 0.3);
    border-radius: 50px;
    padding: 0.75rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #e0e7ff;
    margin-bottom: 1.5rem;
}

.career-opportunities .section-title {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: white;
}

.career-opportunities .section-subtitle {
    font-size: 1.25rem;
    color: #cbd5e1;
    max-width: 600px;
    margin: 0 auto;
}

.careers-preview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    margin: 3rem 0;
}

.career-highlight {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border-radius: 16px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    text-align: center;
    animation: fadeInUp 1s ease-out both;
}

.career-highlight:nth-child(1) { animation-delay: 0.2s; }
.career-highlight:nth-child(2) { animation-delay: 0.4s; }
.career-highlight:nth-child(3) { animation-delay: 0.6s; }

.career-highlight::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, 0.2), transparent);
    transition: left 0.5s ease;
}

.career-highlight:hover::before {
    left: 100%;
}

.career-highlight:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 25px 50px rgba(37, 99, 235, 0.3);
    background: rgba(255, 255, 255, 0.2);
}

.career-highlight .highlight-icon {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: white;
    margin: 0 auto 1.5rem;
    transition: all 0.3s ease;
    animation: float 3s ease-in-out infinite;
}

.career-highlight:nth-child(1) .highlight-icon { animation-delay: 0s; }
.career-highlight:nth-child(2) .highlight-icon { animation-delay: 1s; }
.career-highlight:nth-child(3) .highlight-icon { animation-delay: 2s; }

.career-highlight:hover .highlight-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(251, 191, 36, 0.3);
}

.career-highlight h3 {
    color: white;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.career-highlight p {
    color: #cbd5e1;
    line-height: 1.6;
    font-size: 1rem;
}

.careers-cta {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border-radius: 20px;
    padding: 3rem;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
    margin-top: 3rem;
    animation: fadeInUp 1s ease-out 0.8s both;
}

.careers-cta .cta-content h3 {
    color: white;
    font-size: 2rem;
    margin-bottom: 1rem;
}

.careers-cta .cta-content p {
    color: #cbd5e1;
    font-size: 1.125rem;
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.careers-cta .cta-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.careers-cta .btn-primary {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: #1e293b;
    border: none;
}

.careers-cta .btn-outline {
    background: transparent;
    color: #fbbf24;
    border: 2px solid #fbbf24;
}

.careers-cta .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 40px rgba(251, 191, 36, 0.3);
}

/* ===== ANIMATION KEYFRAMES ===== */
@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

/* ===== RESPONSIVE STYLES FOR NEW SECTIONS ===== */
@media (max-width: 1024px) {
    .programmes-preview,
    .careers-preview {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 1.5rem;
    }
}

@media (max-width: 768px) {
    .training-programmes,
    .career-opportunities {
        padding: 4rem 0;
    }
    
    .training-programmes .section-title,
    .career-opportunities .section-title {
        font-size: 2.5rem;
    }
    
    .programmes-preview,
    .careers-preview {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .programme-highlight,
    .career-highlight {
        padding: 2rem;
    }
    
    .programme-highlight h3,
    .career-highlight h3 {
        font-size: 1.25rem;
    }
    
    .programme-highlight p,
    .career-highlight p {
        font-size: 0.9rem;
    }
    
    .programmes-cta,
    .careers-cta {
        padding: 2rem;
    }
    
    .programmes-cta .cta-content h3,
    .careers-cta .cta-content h3 {
        font-size: 1.75rem;
    }
    
    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }
    
    .cta-buttons .btn {
        width: 100%;
        max-width: 300px;
    }
}

@media (max-width: 480px) {
    .training-programmes .section-title,
    .career-opportunities .section-title {
        font-size: 2rem;
    }
    
    .training-programmes .section-subtitle,
    .career-opportunities .section-subtitle {
        font-size: 1rem;
    }
    
    .programme-preview-card h3,
    .career-preview-card h3 {
        font-size: 1.25rem;
    }
    
    .preview-icon {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
}

/* ===== NOTIFICATION SYSTEM STYLES ===== */
.notification {
    position: fixed !important;
    top: 20px !important;
    right: 20px !important;
    padding: 1rem 1.5rem !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) !important;
    z-index: 99999 !important;
    transform: translateX(100%) scale(0.8) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    max-width: 400px !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: white !important;
    font-family: inherit !important;
}

.notification-success {
    background: #10b981 !important;
}

.notification-error {
    background: #ef4444 !important;
}

.notification-info {
    background: #3b82f6 !important;
}

.notification-content {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    width: 100% !important;
}

.notification-message {
    flex: 1 !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.notification-close {
    background: rgba(255, 255, 255, 0.2) !important;
    border: none !important;
    color: white !important;
    font-size: 1.5rem !important;
    font-weight: bold !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    flex-shrink: 0 !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    font-family: inherit !important;
    text-decoration: none !important;
}

.notification-close:hover {
    background: rgba(255, 255, 255, 0.3) !important;
    transform: scale(1.1) !important;
}

.notification-close:active {
    transform: scale(0.95) !important;
}

.notification-close:focus {
    outline: 2px solid rgba(255, 255, 255, 0.5) !important;
    outline-offset: 2px !important;
}

/* Mobile responsive for notifications */
@media (max-width: 768px) {
    .notification {
        top: 10px !important;
        right: 10px !important;
        left: 10px !important;
        max-width: none !important;
        transform: translateY(-100%) scale(0.8) !important;
    }
    
    .notification.show {
        transform: translateY(0) scale(1) !important;
    }
}

/* Founder Section Responsive Stat Numbers */
@media (max-width: 768px) {
    .founder-visionary .stat-number,
    .founder-stat-number {
        font-size: 2.75rem;
    }
    .founder-visionary .stat-label,
    .founder-stat-label {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .founder-visionary .stat-number,
    .founder-stat-number {
        font-size: 2.25rem;
    }
    .founder-visionary .stat-label,
    .founder-stat-label {
        font-size: 0.9rem;
    }
}