/* Performance Optimizations */

/* Prevent layout shifts */
* {
    box-sizing: border-box;
}

/* Optimize font loading */
.font-body {
    font-display: swap;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

/* Optimize images */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Optimize animations */
* {
    will-change: auto;
}

/* Only set will-change for elements that actually animate */
.dropdown-menu,
.dropdown-arrow,
.transition-all {
    will-change: transform, opacity;
}

/* Optimize scrolling */
html {
    scroll-behavior: smooth;
}

/* Reduce paint operations */
.fixed {
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* Optimize backdrop filters */
.backdrop-blur-md {
    will-change: backdrop-filter;
}

/* Prevent FOUC (Flash of Unstyled Content) */
.font-body {
    visibility: visible !important;
}

/* Optimize critical rendering path */
.critical {
    display: block !important;
}

/* Reduce repaints for fixed elements */
header {
    transform: translateZ(0);
    backface-visibility: hidden;
}

/* Optimize dropdown performance */
.dropdown-menu {
    contain: layout style paint;
}

/* Optimize button interactions */
button, a {
    touch-action: manipulation;
}

/* Optimize form elements */
input, textarea, select {
    touch-action: manipulation;
}

/* Optimize mobile performance */
@media (max-width: 768px) {
    * {
        -webkit-tap-highlight-color: transparent;
    }
    
    .dropdown-menu {
        contain: layout style paint size;
    }
}
