/* Custom Styles & Overrides */
html {
    scroll-behavior: smooth;
}

body {
    background-color: #1a1a1a;
    color: #e5e7eb;
}

/* Typography refinements */
h1, h2, h3, h4 {
    font-family: 'Playfair Display', serif;
}

/* Service Card Hover Effects */
.service-card {
    transition: transform 0.3s ease, border-color 0.3s ease;
}

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

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

::-webkit-scrollbar-track {
    background: #1a1a1a;
}

::-webkit-scrollbar-thumb {
    background: #404040;
}

::-webkit-scrollbar-thumb:hover {
    background: #FF6B6B;
}

/* Form Focus States */
input:focus, select:focus, textarea:focus {
    box-shadow: 0 0 0 2px rgba(255, 107, 107, 0.2);
}

/* Reveal Animation Classes */
.reveal-text {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.reveal-text.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Mobile Menu Transitions */
#mobile-menu {
    transition: transform 0.3s ease-in-out;
}

/* Image contrast fix for dark theme */
img {
    mix-blend-mode: normal;
}
