/* Custom styles for MD Optical */

/* Ensure all text meets contrast requirements */
.text-warm-800\/70 { color: rgba(61, 44, 36, 0.7); }
.text-warm-800\/65 { color: rgba(61, 44, 36, 0.65); }
.text-warm-800\/50 { color: rgba(61, 44, 36, 0.5); }
.text-warm-800\/40 { color: rgba(61, 44, 36, 0.4); }
.text-warm-800\/30 { color: rgba(61, 44, 36, 0.3); }

/* Smooth scrolling offset for fixed nav */
section[id] {
    scroll-margin-top: 80px;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #fdf9ee;
}
::-webkit-scrollbar-thumb {
    background: #e5c96d;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #d49a35;
}

/* Focus visible styles */
:focus-visible {
    outline: 2px solid #d15a2e;
    outline-offset: 2px;
}

/* Mobile menu animation */
#mobileMenu {
    animation: slideDown 0.25s ease;
}
@keyframes slideDown {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Subtle hover lift for cards */
.group:hover {
    transform: translateY(-2px);
}
.group {
    transition: transform 0.3s ease;
}

/* Reduce motion preference */
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .reveal { opacity: 1; transform: none; transition: none; }
    .reveal.visible { opacity: 1; transform: none; }
    .group:hover { transform: none; }
    #mobileMenu { animation: none; }
}
