/* Custom styles */
.capability-card {
    @apply bg-white dark:bg-gray-800 p-8 rounded-xl shadow-lg hover:shadow-xl transition-all duration-300 border border-gray-200 dark:border-gray-700 hover:border-primary-500 dark:hover:border-primary-500;
}

.capability-card:hover {
    transform: translateY(-5px);
}

.icon-container {
    @apply w-16 h-16 rounded-lg flex items-center justify-center mb-6 transition-all duration-300;
}

.capability-card:hover .icon-container {
    @apply scale-110;
}

.cta-section {
    position: relative;
    overflow: hidden;
}

.cta-section::before {
    content: '';
    position: absolute;
    top: -50px;
    left: -50px;
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.cta-section::after {
    content: '';
    position: absolute;
    bottom: -50px;
    right: -50px;
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.cta-button {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* Dark mode toggle styles */
.dark-mode-toggle {
    @apply w-14 h-8 flex items-center bg-gray-200 dark:bg-gray-700 rounded-full p-1 cursor-pointer transition-colors duration-300;
}

.dark-mode-toggle-circle {
    @apply bg-white dark:bg-gray-300 w-6 h-6 rounded-full shadow-md transform transition-transform duration-300;
}

.dark .dark-mode-toggle-circle {
    transform: translateX(26px);
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    @apply bg-gray-100 dark:bg-gray-800;
}

::-webkit-scrollbar-thumb {
    @apply bg-primary-500 rounded-full;
}

::-webkit-scrollbar-thumb:hover {
    @apply bg-primary-600;
}