/* Custom styles that complement Tailwind */

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

/* Selection color */
::selection {
    background: #c43b3b;
    color: #fff;
}

/* Image placeholder fallback */
img {
    background: linear-gradient(135deg, #fde4e4 0%, #facaca 100%);
}

/* Focus styles for accessibility */
a:focus-visible,
button:focus-visible {
    outline: 2px solid #c43b3b;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Subtle gradient overlay for hero image card */
.hero-img-overlay::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(48, 14, 14, 0.15) 0%, transparent 40%);
    border-radius: inherit;
}

/* Soft shadow utility */
.shadow-soft {
    box-shadow: 0 4px 24px rgba(163, 47, 47, 0.08);
}

/* Subtle pattern for cream sections */
.bg-cream-pattern {
    background-image: radial-gradient(circle at 20% 50%, rgba(196, 59, 59, 0.03) 0%, transparent 50%),
                      radial-gradient(circle at 80% 20%, rgba(255, 133, 133, 0.05) 0%, transparent 50%);
}

/* Navbar scroll state */
.nav-scrolled {
    box-shadow: 0 1px 20px rgba(163, 47, 47, 0.08);
}

/* Button ripple effect on hover */
a, button {
    transition: all 0.2s ease;
}

/* Print styles */
@media print {
    nav, .mobile-menu, #nav-toggle { display: none !important; }
    body { color: #000; background: #fff; }
}
