/* Global Stylesheet for Quest Media 360 Inc. */

body {
    font-family: 'Inter', sans-serif;
    background-color: #f7fafc; /* Light gray background */
    color: #374151; /* Slightly darker gray for better readability */
}

.container {
    max-width: 1200px; /* Max width for content */
}

/* Custom button styling for a more prominent look */
.btn-primary {
    background-color: #4F46E5; /* Indigo-600 */
    color: #ffffff;
    font-weight: 700; /* font-bold */
    padding: 0.75rem 2rem; /* py-3 px-8 */
    border-radius: 9999px; /* rounded-full */
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); /* shadow-lg */
    transition: background-color 0.3s ease-in-out, transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
    display: inline-block; /* Ensure it respects padding and width */
}

.btn-primary:hover {
    background-color: #4338CA; /* Indigo-700 */
    transform: translateY(-4px); /* hover:-translate-y-1 */
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); /* hover:shadow-xl */
}

.section-heading {
    text-align: center; /* Ensures consistency with copy */
    font-size: 2.25rem; /* text-4xl */
    line-height: 2.5rem; /* leading-tight */
    font-weight: 800; /* font-extrabold */
    color: #1F2937; /* gray-900 */
    margin-bottom: 1.5rem; /* mb-6 */
    padding-bottom: 0.5rem; /* pb-2 */
    display: inline-block; /* For underline effect */
    border-bottom: 3px solid #6366F1; /* Custom indigo underline */
}

@media (min-width: 768px) { /* md breakpoint */
    .section-heading {
        font-size: 3rem; /* md:text-5xl */
    }
}

.sub-heading {
    font-size: 1.25rem; /* text-xl */
    line-height: 1.75rem; /* leading-7 */
    font-weight: 700; /* font-bold */
    color: #374151; /* gray-800 */
    margin-bottom: 1rem; /* mb-4 */
}

@media (min-width: 768px) { /* md breakpoint */
    .sub-heading {
        font-size: 1.5rem; /* md:text-2xl */
    }
}

.sticky-header {
    position: sticky;
    top: 0;
    z-index: 1000;
}

/* Smooth scrolling for anchor links */
html {
    scroll-behavior: smooth;
}

.process-item::before {
    content: '';
    position: absolute;
    left: -30px; /* Adjust to align with the border-l */
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #4F46E5; /* Indigo color for the dot */
    border: 4px solid #F8F9FA; /* Matches body background */
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.4); /* Subtle glow */
}

.nav-link {
    color: #4B5563; /* gray-700 */
    transition: color 0.3s ease-in-out;
    position: relative;
    padding-bottom: 0.25rem; /* pb-1 */
}

.nav-link:hover {
    color: #4F46E5; /* Indigo-600 */
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background-color: #6366F1; /* Indigo underline */
    transition: width 0.3s ease-in-out;
}

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

/* Styling for the logo */
.logo-img {
    min-height: 150px; /* Minimum height for the logo */
    max-height: 150px; /* Maximum height for the logo */
    width: auto; /* Maintain aspect ratio */
}
