/* Additional custom styles and overrides */
:root {
    scroll-padding-top: 80px;
}

/* Smooth focus styles for accessibility */
a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
    border-radius: 4px;
}

/* Selection color */
::selection {
    background: rgba(212, 168, 67, 0.3);
    color: var(--navy);
}

/* Subtle pattern overlay for product cards */
.product-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    border-radius: var(--radius-lg);
    pointer-events: none;
    transition: var(--transition);
}

/* Image loading placeholder */
img {
    background: linear-gradient(135deg, var(--cream) 0%, var(--cream-dark) 100%);
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: var(--cream);
}
::-webkit-scrollbar-thumb {
    background: var(--navy);
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: var(--navy-light);
}

/* Print styles */
@media print {
    .navbar, .mobile-menu, .cta, .contact-map { display: none !important; }
    body { color: #000; background: #fff; }
    .hero { min-height: auto; padding: 40px 0; }
    section { padding: 40px 0; }
}
