/* Custom styles supplementing Tailwind */

/* Ensure nav text colors adapt to background */
.nav-text {
    color: #374151;
}

nav.scrolled .nav-text {
    color: #1f2937;
}

/* Smooth focus states */
a:focus-visible,
button:focus-visible {
    outline: 2px solid #d6364d;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Mobile link hover */
.mobile-link {
    display: block;
    padding: 0.75rem 1rem;
    border-radius: 0.75rem;
    color: #374151;
    font-weight: 500;
    transition: background-color 0.2s, color 0.2s;
}

.mobile-link:hover {
    background-color: #fdf0f1;
    color: #a21a2e;
}

/* Ensure images don't overflow */
img {
    max-width: 100%;
    height: auto;
}

/* Print styles */
@media print {
    nav, .reveal { display: none; }
    body { color: #000; background: #fff; }
}
