/**
 * Performance Optimizations CSS - Stage 1: Safe CSS-Only Optimizations
 * These optimizations improve INP without interfering with JavaScript functionality
 */

/* Hardware acceleration for smoother animations */
.ps_fund_body__nav,
.ri-header,
.ps_fund_col,
.ps_member .mem_circle,
.ps_about_hero__circles__circ {
    will-change: transform;
    backface-visibility: hidden;
    transform: translateZ(0);
}

/* Optimize Swiper performance */
.swiper-container {
    will-change: transform;
}

.swiper-slide {
    backface-visibility: hidden;
    transform-style: preserve-3d;
}

/* Optimize click targets for better touch performance */
.ps_fund_body__nav ul li,
.ps_perf_tabs__sicon,
.ps_member__img,
.select_investor,
.lang_selector {
    touch-action: manipulation;
    cursor: pointer;
}

/* Reduce repaints on hover states */
.ps_fund_body__nav ul li:hover,
.ps_perf_tabs__sicon:hover,
.select_investor:hover {
    transform: translateZ(0);
}

/* Optimize table performance */
.tablesorter {
    contain: layout style paint;
}

/* Improve scroll performance for long lists */
.ps_team__row,
.ri-blogposts__item {
    contain: layout style paint;
}

/* Optimize form performance */
.footer_form input,
.footer_form textarea,
.footer_form select {
    will-change: auto;
}

.footer_form input:focus,
.footer_form textarea:focus,
.footer_form select:focus {
    will-change: transform;
}

/* Reduce complexity of complex layouts */
.ri-footer {
    contain: layout style;
}

/* Optimize navigation performance */
.ri-menu__items {
    contain: layout style paint;
}

/* Optimize video embeds */
.js-video-embed-init {
    contain: layout style paint;
}

/* Improve perceived performance with transitions */
.ps_fund_body__nav {
    transition: transform 0.2s ease-out;
}

.ri-header {
    transition: background-color 0.2s ease-out;
}

/* Optimize heavy components */
.mem_pop {
    contain: layout style paint;
}

.member_popups {
    contain: layout style paint;
}

/* Reduce paint area for animations */
.mem_circle.lrg {
    transform: scale(1.2) translateZ(0);
    transition: transform 0.3s ease-out;
}

/* Optimize chart containers */
.chart-container {
    contain: layout style paint;
    will-change: contents;
}

/* Improve button performance */
button,
.btn,
input[type="submit"] {
    touch-action: manipulation;
    will-change: transform;
}

button:active,
.btn:active,
input[type="submit"]:active {
    transform: translateY(1px) translateZ(0);
}

/* Optimize image loading */
img {
    content-visibility: auto;
    contain-intrinsic-size: 300px 200px;
}

/* Optimize scroll containers */
.ps_perf_tabs__content {
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
}

/* Performance hints for browsers */
.critical-resource {
    content-visibility: auto;
}

.non-critical-resource {
    content-visibility: auto;
    contain-intrinsic-size: 1px 500px;
}