
/* Global Styles */
:root {
    --primary: #4F46E5; /* Indigo */
    --secondary: #6D28D9; /* Purple */
    --bg-card: #FFFFFF;
    --shadow-1: 0 10px 15px -3px rgba(79,70,229,0.1);
    --shadow-2: 0 8px 30px rgba(109,40,217,0.08);
}

/* Font and Body */
body {
    font-family: 'Helvetica Neue', sans-serif;
    background: linear-gradient(135deg, #FAF9FA, #E9F0F4);
}

/* Gradients for text */
.text-gradient {
    background: var(--gradient-primary);
    background-clip: text;
    color: transparent;
}

/* Hero Section Styles */
.hero {
    background: linear-gradient(135deg, #E9F0F4, #FAF9FA);
}

/* Card Styles */
.card-hover:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-2);
    transition: all 0.3s ease;
}

/* Button Styles */
.btn-gradient {
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    border-radius: 12px;
}

.btn-gradient:hover {
    opacity: 0.95;
    transform: translateY(-1px);
}

/* Contact Form Styles */
.contact-input input:focus,
.contact-textarea textarea:focus {
    outline: none;
    box-shadow: 0 0 0 2px #7048E8;
}

/* Footer Gradient */
.footer-gradient {
    background: linear-gradient(to right, var(--primary), var(--secondary));
}

/* Responsive Layouts */
@media (max-width: 768px) {
    .grid-cols-custom {
        grid-template-columns: 1fr;
    }
}
}

/* Custom Shadow Classes */
.shadow-xxl {
    box-shadow: var(--shadow-2);
}

/* Animation for Cards */
.card-tilt:hover {
    transform: translateY(-5px) rotate(1deg);
}

/* Gradient Backgrounds */
.gradient-bg {
    background: linear-gradient(135deg, #FFFFFF, #F9FAFB);
}

/* Text Shadow for Headings */
.text-shadow {
    text-shadow: 1px 1px 2px rgba(0,0,0,0.05);
}

/* Transition Classes */
.transition-all-fast {
    transition: all 0.2s ease-in-out;
}

/* Custom Border Radius */
.border-rounded {
    border-radius: 20px;
}

/* Custom Colors */
.color-indigo {
    color: var(--primary);
}

.text-purple-variant {
    background: linear-gradient(to right, #6D28D9, #805AD5);
    background-clip: text;
    color: transparent;
}

/* Responsive Padding */
.p-5-sm {
    padding: 1rem;
}

/* Contact Form Gradient Button */
.submit-button {
    background: linear-gradient(to right, #4F46E5, #9333EA);
    transition: all 0.3s ease;
}

.submit-button:hover {
    transform: translateX(-2px);
}

/* Social Icon Hover Effect */
.social-icon:hover {
    background-color: #3741511a;
}
