
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        :root {
            --primary-bg: #f6f1ea;
            --primary-text: #27272a;
            --secondary-text: #52525b;
            --accent-color: #d7c7b1;
            --accent-dark: #9a8566;
            --white: #ffffff;
            --white-transparent: rgba(255, 255, 255, 0.85);
            --shadow-light: 0 20px 60px -32px rgba(31, 27, 20, 0.35);
            --shadow-medium: 0 24px 70px -30px rgba(27, 22, 14, 0.35);
            --shadow-heavy: 0 34px 80px -30px rgba(24, 20, 12, 0.4);
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
            background-color: var(--primary-bg);
            color: var(--primary-text);
            line-height: 1.6;
            overflow-x: hidden;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 1.5rem;
        }

        section {
            padding: 5rem 1.5rem;
        }

        h1, h2, h3, h4, h5, h6 {
            font-weight: 600;
            line-height: 1.2;
        }

        p {
            color: var(--secondary-text);
        }

        a {
            text-decoration: none;
            color: inherit;
            transition: all 0.3s ease;
        }

        button {
            cursor: pointer;
            border: none;
            background: none;
            font-family: inherit;
            transition: all 0.3s ease;
        }

        img {
            max-width: 100%;
            height: auto;
        }

        /* Utility Classes */
        .text-center {
            text-align: center;
        }

        .uppercase {
            text-transform: uppercase;
        }

        .tracking-wide {
            letter-spacing: 0.3em;
        }

        .rounded-full {
            border-radius: 9999px;
        }

        .rounded-lg {
            border-radius: 0.5rem;
        }

        .rounded-xl {
            border-radius: 0.75rem;
        }

        .rounded-2xl {
            border-radius: 1rem;
        }

        .rounded-3xl {
            border-radius: 1.5rem;
        }

        .shadow-light {
            box-shadow: var(--shadow-light);
        }

        .shadow-medium {
            box-shadow: var(--shadow-medium);
        }

        .shadow-heavy {
            box-shadow: var(--shadow-heavy);
        }

        .backdrop-blur {
            backdrop-filter: blur(10px);
        }

        .backdrop-blur-xl {
            backdrop-filter: blur(20px);
        }

        .flex {
            display: flex;
        }

        .flex-col {
            flex-direction: column;
        }

        .items-center {
            align-items: center;
        }

        .justify-center {
            justify-content: center;
        }

        .justify-between {
            justify-content: space-between;
        }

        .grid {
            display: grid;
        }

        .gap-4 {
            gap: 1rem;
        }

        .gap-6 {
            gap: 1.5rem;
        }

        .gap-8 {
            gap: 2rem;
        }

        .gap-10 {
            gap: 2.5rem;
        }

        .gap-12 {
            gap: 3rem;
        }

        .gap-16 {
            gap: 4rem;
        }

        .space-y-4 > * + * {
            margin-top: 1rem;
        }

        .space-y-6 > * + * {
            margin-top: 1.5rem;
        }

        .space-y-8 > * + * {
            margin-top: 2rem;
        }

        .space-y-10 > * + * {
            margin-top: 2.5rem;
        }

        .space-y-12 > * + * {
            margin-top: 3rem;
        }

        .mb-4 {
            margin-bottom: 1rem;
        }

        .mb-6 {
            margin-bottom: 1.5rem;
        }

        .mb-8 {
            margin-bottom: 2rem;
        }

        .mb-10 {
            margin-bottom: 2.5rem;
        }

        .mb-12 {
            margin-bottom: 3rem;
        }

        .mb-16 {
            margin-bottom: 4rem;
        }

        .mt-2 {
            margin-top: 0.5rem;
        }

        .mt-3 {
            margin-top: 0.75rem;
        }

        .mt-4 {
            margin-top: 1rem;
        }

        .mt-6 {
            margin-top: 1.5rem;
        }

        .mt-8 {
            margin-top: 2rem;
        }

        .mt-10 {
            margin-top: 2.5rem;
        }

        .mt-12 {
            margin-top: 3rem;
        }

        .mt-16 {
            margin-top: 4rem;
        }

        .px-4 {
            padding-left: 1rem;
            padding-right: 1rem;
        }

        .px-6 {
            padding-left: 1.5rem;
            padding-right: 1.5rem;
        }

        .px-8 {
            padding-left: 2rem;
            padding-right: 2rem;
        }

        .py-2 {
            padding-top: 0.5rem;
            padding-bottom: 0.5rem;
        }

        .py-3 {
            padding-top: 0.75rem;
            padding-bottom: 0.75rem;
        }

        .py-4 {
            padding-top: 1rem;
            padding-bottom: 1rem;
        }

        .py-6 {
            padding-top: 1.5rem;
            padding-bottom: 1.5rem;
        }

        .py-8 {
            padding-top: 2rem;
            padding-bottom: 2rem;
        }

        .py-10 {
            padding-top: 2.5rem;
            padding-bottom: 2.5rem;
        }

        .py-12 {
            padding-top: 3rem;
            padding-bottom: 3rem;
        }

        .py-16 {
            padding-top: 4rem;
            padding-bottom: 4rem;
        }

        .py-20 {
            padding-top: 5rem;
            padding-bottom: 5rem;
        }

        .py-24 {
            padding-top: 6rem;
            padding-bottom: 6rem;
        }

        .w-full {
            width: 100%;
        }

        .h-full {
            height: 100%;
        }

        .max-w-2xl {
            max-width: 42rem;
        }

        /* Footer list styles */
        footer ul {
            list-style: none;
        }
        
        footer ul li {
            margin-bottom: 0.75rem;
        }

        .max-w-3xl {
            max-width: 48rem;
        }

        .max-w-4xl {
            max-width: 56rem;
        }

        .max-w-5xl {
            max-width: 64rem;
        }

        .max-w-6xl {
            max-width: 72rem;
        }

        .mx-auto {
            margin-left: auto;
            margin-right: auto;
        }

        .text-xs {
            font-size: 0.75rem;
        }

        .text-sm {
            font-size: 0.875rem;
        }

        .text-base {
            font-size: 1rem;
        }

        .text-lg {
            font-size: 1.125rem;
        }

        .text-xl {
            font-size: 1.25rem;
        }

        .text-2xl {
            font-size: 1.5rem;
        }

        .text-3xl {
            font-size: 1.875rem;
        }

        .text-4xl {
            font-size: 2.25rem;
        }

        .text-5xl {
            font-size: 3rem;
        }

        .text-6xl {
            font-size: 3.75rem;
        }

        .text-7xl {
            font-size: 4.5rem;
        }

        .font-semibold {
            font-weight: 600;
        }

        .font-bold {
            font-weight: 700;
        }

        .leading-relaxed {
            line-height: 1.625;
            font-size: 17px;
        }

        .leading-tight {
            line-height: 1.25;
        }

        .bg-white {
            background-color: var(--white);
        }

        .bg-white-transparent {
            background-color: var(--white-transparent);
        }

        .bg-accent {
            background-color: var(--accent-color);
        }

        .bg-primary {
            background-color: var(--primary-bg);
        }

        .bg-dark {
            background-color: #13110f;
        }

        .text-primary {
            color: var(--primary-text);
        }

        .text-secondary {
            color: var(--secondary-text);
        }

        .text-white {
            color: var(--white);
        }

        .border {
            border-width: 1px;
            border-style: solid;
        }

        .border-white {
            border-color: var(--white);
        }

        .border-zinc-200 {
            border-color: #e4e4e7;
        }

        .border-zinc-300 {
            border-color: #d4d4d8;
        }

        .border-zinc-900 {
            border-color: var(--primary-text);
        }

        .border-white-60 {
            border-color: rgba(255, 255, 255, 0.6);
        }

        .bg-gradient-to-br {
            background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
        }

        .from-white {
            --tw-gradient-from: #ffffff;
            --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(255, 255, 255, 0));
        }

        .via-primary {
            --tw-gradient-stops: var(--tw-gradient-from), #f6f1ea, var(--tw-gradient-to, rgba(246, 241, 234, 0));
        }

        .to-white {
            --tw-gradient-to: #ffffff;
        }

        .from-f8f3ec {
            --tw-gradient-from: #f8f3ec;
        }

        .via-f4ede3 {
            --tw-gradient-stops: var(--tw-gradient-from), #f4ede3, var(--tw-gradient-to, rgba(244, 237, 227, 0));
        }

        .to-f8f3ec {
            --tw-gradient-to: #f8f3ec;
        }

        .from-f5eee4 {
            --tw-gradient-from: #f5eee4;
        }

        .to-f5eee4 {
            --tw-gradient-to: #f5eee4;
        }

        .from-zinc-50 {
            --tw-gradient-from: #fafafa;
        }

        .to-zinc-50 {
            --tw-gradient-to: #fafafa;
        }

        /* Animations */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @keyframes fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @keyframes fadeInLeft {
            from {
                opacity: 0;
                transform: translateX(-30px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        @keyframes fadeInRight {
            from {
                opacity: 0;
                transform: translateX(30px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        @keyframes bounce {
            0%, 100% {
                transform: translateY(0);
            }
            50% {
                transform: translateY(10px);
            }
        }

        .animate-fadeInUp {
            animation: fadeInUp 0.8s ease-out forwards;
        }

        .animate-fadeInDown {
            animation: fadeInDown 0.8s ease-out forwards;
        }

        .animate-fadeInLeft {
            animation: fadeInLeft 0.8s ease-out forwards;
        }

        .animate-fadeInRight {
            animation: fadeInRight 0.8s ease-out forwards;
        }

        .animate-bounce {
            animation: bounce 1.5s infinite;
        }

        /* Header Styles */
        header {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            z-index: 1000;
            padding: 1rem 0;
            transition: all 0.3s ease;
        }

        header.scrolled {
            background-color: rgba(255, 255, 255, 0.9);
            backdrop-filter: blur(20px);
            box-shadow: 0 10px 40px -30px rgba(36, 34, 27, 0.45);
        }

        .logo {
            font-weight: 600;
            font-size: 0.875rem; /* Smaller font size */
            letter-spacing: 0.1em; /* Reduced letter spacing */
            text-transform: uppercase;
            line-height: 1.2; /* Better line height for two lines */
            text-align: left;
        }
        
        /* Logo container */
        header .flex.items-center.gap-4 {
            display: flex;
            align-items: center;
            gap: 1rem;
        }
        
        /* Logo image styling */
        header img {
            height: 2.5rem;
            width: 2.5rem;
            object-fit: contain;
            flex-shrink: 0;
        }

        .nav-links {
            display: none;
        }

        .nav-links.show {
            display: flex;
            flex-direction: column;
            position: absolute;
            top: 100%;
            left: 0;
            width: 100%;
            background-color: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(20px);
            box-shadow: 0 18px 50px -30px rgba(31, 27, 19, 0.45);
            padding: 1.5rem;
        }

        .nav-link {
            padding: 0.75rem 0;
            color: var(--secondary-text);
            transition: all 0.2s ease;
        }

        .nav-link:hover {
            color: var(--primary-text);
            transform: scale(1.05) translateY(-2px);
        }

        .cta-button {
            display: inline-flex;
            align-items: center;
            padding: 0.75rem 1.5rem;
            border: 1px solid var(--primary-text);
            background-color: var(--primary-text);
            color: var(--white);
            border-radius: 9999px;
            font-weight: 600;
            transition: all 0.2s ease;
        }

        .cta-button:hover {
            background-color: transparent;
            color: var(--primary-text);
            transform: scale(1.05);
        }

        .cta-button:active {
            transform: scale(0.95);
        }

        .menu-toggle {
            display: block;
            padding: 0.5rem;
            border-radius: 0.5rem;
            transition: all 0.2s ease;
        }

        .menu-toggle:hover {
            background-color: rgba(0, 0, 0, 0.05);
        }

        .menu-toggle:active {
            transform: scale(0.95);
        }

        /* Hero Section */
        .hero {
            position: relative;
            min-height: 90vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 12rem 1.5rem 7rem;
            overflow: hidden;
        }

/* Mobile styles */
@media (max-width: 768px) {
    .hero {
        min-height: 50vh; /* Reduced from 90vh to 50vh on mobile */
        padding: 8rem 1.5rem 4rem; /* Reduced padding on mobile */
    }
    
    /* Adjust scroll indicator position */
    .scroll-indicator {
        bottom: 1.5rem;
    }
}


        .hero-bg {
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at top left, rgba(226, 214, 195, 0.95), rgba(244, 238, 229, 0.75)),
                        radial-gradient(circle at bottom right, rgba(209, 195, 174, 0.65), rgba(255, 255, 255, 0));
        }

        .hero-bg-image {
            position: absolute;
            inset: 0;
            background-image: url('https://images.unsplash.com/photo-1523580846011-d3a5bc25702b?q=80&w=2000&auto=format&fit=crop');
            background-size: cover;
            background-position: center;
            opacity: 0.15;
        }

        .hero-content {
            position: relative;
            z-index: 10;
            text-align: center;
        }

        .hero-stats {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 1.5rem;
            margin-top: 4rem;
        }
        /* Center align the Learn More and Explore Programmes buttons */
        .hero .flex.justify-center {
            justify-content: center;
            gap: 1rem;
        }
        /* Ensure hero buttons stay in row layout */
        .hero .flex {
            flex-wrap: nowrap;
        }

        .hero .cta-button {
            white-space: nowrap;
            flex-shrink: 0;
        }
        /* Fix pricing alignment */
        .pricing-card .flex.items-baseline {
            align-items: baseline;
            justify-content: flex-start;
        }

        .pricing-card .text-4xl {
            line-height: 1;
        }

        .pricing-card .text-secondary {
            margin-left: 0.5rem;
        }

        .stat-card {
            text-align: center;
            border-radius: 1.5rem;
            border: 1px solid rgba(255, 255, 255, 0.7);
            background-color: rgba(255, 255, 255, 0.7);
            padding: 1.5rem 2rem;
            box-shadow: 0 18px 50px -30px rgba(31, 27, 19, 0.3);
            backdrop-filter: blur(10px);
            transition: transform 0.2s ease;
        }

        .stat-card:hover {
            transform: translateY(-4px);
        }

        .scroll-indicator {
            position: absolute;
            bottom: 3rem;
            left: 50%;
            transform: translateX(-50%);
        }

        /* About Section */

        /* About Section */
.about {
    background: linear-gradient(to bottom right, #f8f3ec, #f4ede3, #f8f3ec);
}

.about-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem;
}

.image-card {
    position: relative;
    overflow: hidden;
    border-radius: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 18px 60px -24px rgba(31, 27, 19, 0.35);
    height: 400px; /* Fixed height to match text column */
}

.image-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stats-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-top: 3rem;
}

.stat-box {
    border-radius: 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.7);
    background-color: rgba(255, 255, 255, 0.7);
    padding: 2rem;
    text-align: center;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
    width: 100%;
}

@media (min-width: 768px) {
    .about-grid {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
        align-items: start;
    }
    
    .image-card {
        height: 100%; /* Take full height of grid cell */
        min-height: 400px;
    }
    
    .stats-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 2rem;
    }
    
    .stat-box {
        padding: 2rem 1.5rem;
    }
    
}

        @media (min-width: 1024px) {
            .about-grid {
                gap: 5rem;
            }
            
            .image-card {
                min-height: 450px;
            }
            .hero {
            min-height: 90vh;
        }
        }
        /* Features Section */
        .features {
            background: linear-gradient(to bottom right, #ffffff, #f7f2eb, #ffffff);
        }

        .features-grid {
            display: grid;
            gap: 1.5rem;
        }

        .feature-card {
            border-radius: 1.5rem;
            border: 1px solid rgba(255, 255, 255, 0.6);
            background-color: rgba(255, 255, 255, 0.8);
            padding: 2rem;
            text-align: left;
            box-shadow: var(--shadow-light);
            backdrop-filter: blur(20px);
            transition: all 0.3s ease;
        }

        .feature-card:hover {
            transform: translateY(-8px);
            box-shadow: var(--shadow-heavy);
        }

        .feature-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 3.5rem;
            height: 3.5rem;
            border-radius: 1rem;
            background-color: var(--accent-color);
            color: var(--primary-text);
            margin-bottom: 1.5rem;
        }

        /* Programmes Section */
        .programmes-grid {
            display: grid;
            gap: 1.5rem;
        }

        .programme-card {
            border-radius: 1.5rem;
            border: 1px solid #e4e4e7;
            background-color: rgba(255, 255, 255, 0.6);
            padding: 2rem;
            text-align: left;
            box-shadow: 0 18px 60px -32px rgba(31, 27, 19, 0.32);
            backdrop-filter: blur(16px);
            transition: all 0.3s ease;
        }

        .programme-card:hover {
            transform: translateY(-8px);
            border-color: #d4d4d8;
            box-shadow: 0 32px 70px -30px rgba(27, 22, 14, 0.35);
        }

        .programme-header {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin-bottom: 1.5rem;
        }

        .programme-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 3rem;
            height: 3rem;
            border-radius: 1rem;
            background-color: #efe3d1;
            color: var(--primary-text);
        }

        .programme-list {
            list-style: none;
        }

        .programme-list li {
            display: flex;
            align-items: flex-start;
            gap: 0.75rem;
            margin-bottom: 0.75rem;
        }

        .programme-list li::before {
            content: "";
            display: block;
            width: 0.5rem;
            height: 0.5rem;
            border-radius: 9999px;
            background-color: #d4c3ae;
            margin-top: 0.5rem;
            flex-shrink: 0;
        }

        /* Pricing Section */
        .pricing {
            background: linear-gradient(to bottom, #ffffff, #f6f1ea, #ffffff);
        }

        .pricing-grid {
            display: grid;
            gap: 1.5rem;
        }

        .pricing-card {
            position: relative;
            border-radius: 1.5rem;
            border: 1px solid rgba(255, 255, 255, 0.6);
            background-color: rgba(255, 255, 255, 0.85);
            padding: 2rem;
            box-shadow: var(--shadow-medium);
            backdrop-filter: blur(20px);
            transition: all 0.3s ease;
        }

        .pricing-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 40px 90px -35px rgba(24, 19, 12, 0.45);
        }

        .pricing-card.featured {
            border-color: #d4c3ae;
            background-color: #f4ede3;
            box-shadow: 0 30px 90px -32px rgba(39, 32, 20, 0.45);
        }

        .pricing-badge {
            position: absolute;
            top: -0.75rem;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            align-items: center;
            gap: 0.5rem;
            border-radius: 9999px;
            background-color: var(--primary-text);
            padding: 0.5rem 1rem;
            color: var(--white);
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.3em;
            text-transform: uppercase;
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
        }

        .pricing-list {
            list-style: none;
            margin-top: 2rem;
        }

        .pricing-list li {
            display: flex;
            align-items: flex-start;
            gap: 0.75rem;
            margin-bottom: 0.75rem;
        }

        .pricing-list li::before {
            content: "";
            display: block;
            width: 0.625rem;
            height: 0.625rem;
            border-radius: 9999px;
            background-color: #cbb89f;
            margin-top: 0.375rem;
            flex-shrink: 0;
        }

        .pricing-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            border-radius: 0.75rem;
            border: 1px solid;
            padding: 0.75rem 1.5rem;
            font-size: 0.875rem;
            font-weight: 600;
            letter-spacing: 0.3em;
            text-transform: uppercase;
            transition: all 0.2s ease;
            margin-top: 2.5rem;
        }

        .pricing-button.featured {
            border-color: var(--primary-text);
            background-color: var(--primary-text);
            color: var(--white);
        }

        .pricing-button.featured:hover {
            background-color: transparent;
            color: var(--primary-text);
        }

        .pricing-button:not(.featured) {
            border-color: rgba(39, 39, 42, 0.2);
            background-color: var(--white);
            color: var(--primary-text);
        }

        .pricing-button:not(.featured):hover {
            border-color: var(--primary-text);
            background-color: var(--primary-text);
            color: var(--white);
        }

        /* Hubs Section */

        /* Hubs Section - More Compact */
.hubs {
    background: linear-gradient(to bottom right, #f5eee4, #ffffff, #f5eee4);
    padding: 3rem 1.5rem;
}

.hubs-grid {
    display: grid;
    gap: 1.5rem;
}

.hub-card {
    border-radius: 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.6);
    background-color: rgba(255, 255, 255, 0.75);
    padding: 1.5rem;
    box-shadow: 0 15px 40px -25px rgba(31, 27, 20, 0.3);
    backdrop-filter: blur(20px);
    transition: all 0.3s ease;
}

.hub-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 60px -25px rgba(27, 22, 14, 0.4);
}

.hub-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.hub-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.75rem;
    background-color: #e8dccb;
    color: var(--primary-text);
    font-size: 1.1rem;
}

.hub-header h3 {
    font-size: 1.1rem;
}

.hub-header .text-secondary {
    font-size: 0.8rem;
}

.hub-card > .text-secondary {
    font-size: 0.85rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

.hub-focus {
    border-radius: 0.75rem;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 1rem;
    box-shadow: inset 0 1px 3px 0 rgba(0, 0, 0, 0.05);
    margin-top: 1rem;
}

.hub-focus h4 {
    font-size: 0.75rem;
    margin-bottom: 0.75rem;
}

.hub-focus-list {
    list-style: none;
    margin-top: 0.5rem;
    display: grid;
    gap: 0.5rem;
}

.hub-focus-list li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
}

.hub-focus-list li::before {
    content: "";
    display: block;
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 9999px;
    background-color: #c9b79d;
    flex-shrink: 0;
}

.hub-card .bg-white {
    margin-top: 1rem;
    padding: 0.75rem;
    border-radius: 0.5rem;
}

.hub-card .bg-white .text-xs {
    font-size: 0.7rem;
    line-height: 1.3;
}

        /* Testimonials Section */
        .testimonials-container {
            position: relative;
            overflow: hidden;
            mask-image: linear-gradient(to right, transparent 0%, black 14%, black 86%, transparent 100%);
            -webkit-mask-image: linear-gradient(to right, transparent 0%, black 14%, black 86%, transparent 100%);
        }

        .testimonials-track {
            display: flex;
            gap: 1rem;
            width: max-content;
        }

        .testimonial-card {
            flex-shrink: 0;
            width: 20rem;
            border-radius: 1.5rem;
            border: 1px solid rgba(255, 255, 255, 0.6);
            background-color: rgba(255, 255, 255, 0.85);
            padding: 1.75rem;
            box-shadow: var(--shadow-light);
            backdrop-filter: blur(20px);
            margin: 0 0.75rem;
        }

        .testimonial-header {
            display: flex;
            align-items: center;
            margin-bottom: 1rem;
        }

        .testimonial-avatar {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 3rem;
            height: 3rem;
            border-radius: 9999px;
            background-color: var(--accent-color);
            color: var(--primary-text);
            font-weight: 600;
            font-size: 0.875rem;
        }

        .testimonial-info {
            margin-left: 0.75rem;
        }

        .testimonial-name {
            font-weight: 600;
            font-size: 0.875rem;
            color: var(--primary-text);
        }

        .testimonial-role {
            font-size: 0.75rem;
            color: var(--secondary-text);
            text-transform: uppercase;
            letter-spacing: 0.3em;
        }

        .testimonial-company {
            font-size: 0.75rem;
            color: #a1a1aa;
        }

        .testimonial-content {
            font-size: 0.875rem;
            color: var(--secondary-text);
            line-height: 1.625;
        }

        /* FAQ Section */
        .faq-item {
            border: 1px solid #e4e4e7;
            border-radius: 1rem;
            overflow: hidden;
            box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
            transition: box-shadow 0.3s ease;
        }

        .faq-item:hover {
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
        }

        .faq-question {
            width: 100%;
            padding: 1.5rem;
            text-align: left;
            display: flex;
            align-items: center;
            justify-content: space-between;
            transition: background-color 0.2s ease;
        }

        .faq-question:hover {
            background-color: rgba(0, 0, 0, 0.02);
        }

        .faq-toggle {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 2rem;
            height: 2rem;
            border-radius: 9999px;
            background-color: #f4f4f5;
            color: var(--secondary-text);
            flex-shrink: 0;
            transition: all 0.3s ease;
        }

        .faq-toggle.active {
            background-color: var(--primary-text);
            color: var(--white);
            transform: rotate(180deg);
        }

        .faq-answer {
            padding: 0 1.5rem 1.5rem;
            color: var(--primary-text);
            line-height: 1.625;
        }

        /* Contact Section */
        .contact {
            background-color: #fafafa;
        }

        .contact-grid {
            display: grid;
            gap: 3rem;
        }

        .contact-form {
            border-radius: 1.5rem;
            background-color: rgba(255, 255, 255, 0.85);
            padding: 2rem;
            box-shadow: 0 20px 60px -30px rgba(31, 27, 19, 0.35);
            border: 1px solid rgba(255, 255, 255, 0.6);
            backdrop-filter: blur(20px);
        }

        .form-grid {
            display: grid;
            gap: 1rem;
        }

        .form-group {
            margin-bottom: 1rem;
        }

        .form-label {
            display: block;
            font-size: 0.8rem;
            font-weight: 500;
            color: var(--secondary-text);
            margin-bottom: 0.4rem;
            text-transform: uppercase;
            letter-spacing: 0.1em;
        }

        .form-input, .form-select, .form-textarea {
            width: 100%;
            padding: 0.6rem 0.8rem;
            border: 1px solid #d4d4d8;
            border-radius: 0.5rem;
            font-family: inherit;
            font-size: 0.9rem;
            transition: all 0.2s ease;
        }

        .form-textarea {
            resize: none;
            height: 100px;
        }

        .contact-info {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        .contact-item {
            display: flex;
            align-items: flex-start;
            gap: 1rem;
        }

        .contact-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 0.8rem;
            background-color: var(--accent-color);
            color: var(--primary-text);
            flex-shrink: 0;
            font-size: 1rem;
        }

        .contact-title {
            font-weight: 600;
            color: var(--primary-text);
            margin-bottom: 0.2rem;
            font-size: 0.95rem;
        }

        .contact-description {
            font-size: 0.8rem;
            color: var(--secondary-text);
            line-height: 1.4;
        }
        
/* Contact link styles */
.contact-link {
    display: block;
    color: var(--secondary-text);
    text-decoration: none;
    transition: color 0.2s ease;
    font-size: 0.8rem;
    margin-bottom: 0.2rem;
}

.contact-link:hover {
    color: var(--primary-text);
    text-decoration: underline;
}

.contact-link:last-child {
    margin-bottom: 0;
}

/* Ensure contact description container has proper spacing */
.contact-details .contact-description {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

        .form-input:focus, .form-select:focus, .form-textarea:focus {
            outline: none;
            border-color: var(--primary-text);
            box-shadow: 0 0 0 2px rgba(39, 39, 42, 0.1);
        }

        .contact-details {
            flex: 1;
        }

        /* Impact Section */

/* Crazy Animations */
@keyframes float {
  0%, 100% { transform: translateY(0px) rotate(0deg); }
  50% { transform: translateY(-20px) rotate(5deg); }
}

@keyframes pulse-glow {
  0%, 100% { box-shadow: 0 0 20px rgba(215, 199, 177, 0.5); }
  50% { box-shadow: 0 0 40px rgba(215, 199, 177, 0.8), 0 0 60px rgba(215, 199, 177, 0.4); }
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}

@keyframes slideInStagger {
  0% { opacity: 0; transform: translateY(50px) scale(0.8); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes typewriter {
  from { width: 0; }
  to { width: 100%; }
}

@keyframes blink {
  0%, 100% { border-color: transparent; }
  50% { border-color: var(--primary-text); }
}

/* Animation Classes */
.animate-float {
  animation: float 6s ease-in-out infinite;
}

.animate-pulse-glow {
  animation: pulse-glow 2s ease-in-out infinite;
}

.animate-shake {
  animation: shake 0.5s ease-in-out;
}

.animate-stagger > * {
  animation: slideInStagger 0.6s ease-out forwards;
  opacity: 0;
}

.typewriter {
  overflow: hidden;
  border-right: 3px solid;
  white-space: nowrap;
  animation: typewriter 3s steps(40) 1s both, blink 1s infinite;
}

/* Hover Effects */
.magnetic {
  transition: transform 0.3s ease;
}

.magnetic:hover {
  transform: scale(1.05) translateY(-5px);
}

.glass-effect {
  backdrop-filter: blur(20px) saturate(180%);
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Parallax Scrolling */
.parallax {
  transform-style: preserve-3d;
}

.parallax-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

        /* Impact Section - More Compact */
.impact {
    background: linear-gradient(135deg, #f8f3ec 0%, #f4ede3 50%, #f8f3ec 100%);
    padding: 3rem 1.5rem;
}

.impact-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    max-width: 1200px;
    margin: 0 auto;
}

.impact-card {
    border-radius: 1.5rem;
    padding: 2rem 1.5rem;
    box-shadow: 0 15px 40px -25px rgba(31, 27, 19, 0.3);
    backdrop-filter: blur(20px);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.impact-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 50px -25px rgba(31, 27, 19, 0.4);
}

.purpose-card {
    /*background: linear-gradient(135deg, rgba(255,255,255,0.9) 0%, rgba(255,255,255,0.8) 100%);*/
    border: 0;
    text-align: center;
    box-shadow: none;
}

.stats-card {
    background: rgba(255,255,255,0.85);
    border: 1px solid rgba(255,255,255,0.6);
}

.quote-card {
    background: linear-gradient(135deg, var(--accent-color) 0%, #e8dccb 100%);
    border: 1px solid rgba(215, 199, 177, 0.6);
    color: var(--primary-text);
}

.impact-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--accent-color);
    color: var(--primary-text);
    margin: 0 auto 1.5rem;
    font-size: 1.5rem;
}

.impact-stats-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}
.impact-card.stats-card {
    background: rgba(255,255,255,0.85);
    border: 1px solid rgba(255,255,255,0.6);
    border-radius: 1.5rem;
    padding: 2rem 1.5rem;
    box-shadow: 0 15px 40px -25px rgba(31, 27, 19, 0.3);
    backdrop-filter: blur(20px);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.impact-card.stats-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 50px -25px rgba(31, 27, 19, 0.4);
}
.impact-stat {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 0.75rem;
    background: rgba(255,255,255,0.6);
    transition: transform 0.2s ease;
}

.impact-stat:hover {
    transform: translateX(3px);
}

.stat-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.5rem;
    background: var(--accent-color);
    color: var(--primary-text);
    flex-shrink: 0;
    font-size: 1rem;
}

.stat-content h4 {
    color: var(--primary-text);
    margin-bottom: 0.2rem;
    font-size: 0.9rem;
}

.stat-content p {
    font-size: 0.75rem;
    line-height: 1.3;
}

.quote-content {
    text-align: center;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.quote-content blockquote {
    font-size: 1.1rem;
    line-height: 1.4;
    margin-bottom: 1rem;
}

.quote-author {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1rem;
}

.quote-author div:last-child {
    text-align: left;
}

.quote-author .font-semibold {
    font-size: 0.9rem;
}

.quote-author .text-sm {
    font-size: 0.7rem;
}
        @media (min-width: 1024px) {
            .contact-grid {
        gap: 3rem;
    }
    
    .contact-form {
        padding: 2rem 2rem;
    }
        }

        @media (min-width: 1200px) {
            .impact-grid {
                gap: 2rem;
            }
            .hero {
            min-height: 90vh;
        }

            .hubs-grid{
                gap: 2rem
            }
        }

        /* Footer */
        footer {
            background-color: #13110f;
            color: var(--white);
        }

        .footer-grid {
            display: grid;
            gap: 3rem;
        }

        .footer-logo {
            font-weight: 600;
            font-size: 1.5rem;
            letter-spacing: 0.3em;
            text-transform: uppercase;
            margin-bottom: 1.5rem;
        }

        .footer-description {
            font-size: 0.875rem;
            color: #a1a1aa;
            line-height: 1.625;
            margin-bottom: 2rem;
        }

        .footer-links {
            display: grid;
            gap: 1.5rem;
        }

        .footer-heading {
            font-weight: 600;
            font-size: 0.875rem;
            text-transform: uppercase;
            letter-spacing: 0.3em;
            margin-bottom: 1rem;
            color: #d4d4d8;
        }

        .footer-link {
            font-size: 0.875rem;
            color: #a1a1aa;
            margin-bottom: 0.75rem;
            transition: color 0.2s ease;
        }

        .footer-link:hover {
            color: var(--white);
        }

        .social-links {
            display: flex;
            gap: 1rem;
        }

        .social-link {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 9999px;
            background-color: rgba(255, 255, 255, 0.1);
            color: var(--white);
            transition: all 0.2s ease;
        }

        .social-link:hover {
            background-color: var(--accent-color);
            color: var(--primary-text);
            transform: scale(1.1);
        }

        .footer-bottom {
            border-top: 1px solid rgba(255, 255, 255, 0.1);
            padding-top: 2rem;
            margin-top: 3rem;
            text-align: center;
        }

        .copyright {
            font-size: 0.75rem;
            color: #a1a1aa;
        }

        /* Responsive Styles */
        @media (min-width: 640px) {
            .hero-stats {
                flex-direction: row;
                justify-content: center;
            }
            .features-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .programmes-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .pricing-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .hubs-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .footer-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (min-width: 768px) {
            .nav-links {
                display: flex;
                flex-direction: row;
                align-items: center;
                gap: 2rem;
            }
            
            .menu-toggle {
                display: none;
            }
            
            
            .features-grid {
                grid-template-columns: repeat(3, 1fr);
            }
            
            .pricing-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .hubs-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .contact-grid {
                grid-template-columns: 1fr 1fr;
                gap: 2rem;
            }
            
            .contact-form {
                padding: 2rem 1.5rem;
            }
            
            .footer-grid {
                grid-template-columns: repeat(4, 1fr);
            }
        }

        @media (min-width: 1024px) {
            .programmes-grid {
                grid-template-columns: repeat(3, 1fr);
            }
            .pricing-grid {
                grid-template-columns: repeat(4, 1fr);
            }
            .impact-grid {
        grid-template-columns: 2fr 1fr;
        gap: 1.5rem;
    }
    
    .purpose-card {
        grid-column: 1 / 2;
        padding: 2rem 2.5rem;
    }
    
    .stats-card {
        grid-column: 2 / 3;
        grid-row: 1 / 2;
    }
    
    .quote-card {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
        padding: 1.5rem;
    }
    
    /* Hubs Section - Desktop */
    .hubs-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 1.5rem;
    }
    
    .hub-card {
        padding: 1.5rem 1.25rem;
    }
}
    .footer-bottom .copyright a {
    color: var(--primary) !important;
    text-decoration: none !important;
}

.footer-bottom .copyright a:hover {
    color: var(--primary) !important;
}