            :root {
                --primary: #3a5a78;
                --secondary: #b38e5d;
                --accent: #5d8b7f;
            }

            body {
                font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
                scroll-behavior: smooth;
            }

            .hero {
                background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('https://images.unsplash.com/photo-1600585152220-90363fe7e115?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80');
                background-size: cover;
                background-position: center;
                min-height: 80vh;
            }

            .nav-link:hover {
                color: var(--secondary) !important;
            }

            .btn-primary {
                background-color: var(--secondary);
                transition: all 0.3s;
            }

            .btn-primary:hover {
                background-color: #9a7a4d;
                transform: translateY(-3px);
            }

            .granite-sample {
                transition: transform 0.3s;
            }

            .granite-sample:hover {
                transform: scale(1.05);
            }

            .testimonial-card {
                box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
                transition: transform 0.3s;
            }

            .testimonial-card:hover {
                transform: translateY(-10px);
            }

            .contact-icon {
                color: var(--secondary);
            }

            footer {
                background-color: var(--primary);
            }

            .footer-link:hover {
                color: var(--secondary) !important;
            }

            .map-container {
                height: 400px;
                width: 100%;
            }

            /* Mobile Menu Styles */
            .mobile-menu {
                transition: transform 0.3s ease-in-out;
            }

            .mobile-menu-hidden {
                transform: translateX(100%);
            }

            .mobile-menu-open {
                transform: translateX(0);
            }

            .alert.alert-success {
                background-color: #4CAF50;
                color: white;
                padding: 1rem;
                margin-top: 1rem;
                border-radius: 0.375rem;
                text-align: center;
                transition: opacity 0.3s ease;
            }