.faq-item { transition: all 0.3s ease; }
.faq-item:hover { border-color: rgba(59,130,246,0.3); }
.faq-toggle:checked ~ .faq-answer { max-height: 1000px; opacity: 1; padding-top: 16px; }
.faq-toggle:checked ~ label .faq-chevron { transform: rotate(180deg); }
.faq-answer { max-height: 0; opacity: 0; overflow: hidden; transition: all 0.3s ease; }
.faq-chevron { transition: transform 0.3s ease; }
.mesh-bg {
    background: linear-gradient(135deg, #0a0a0a 0%, #0d1117 25%, #161b22 50%, #0d1117 75%, #0a0a0a 100%);
    background-size: 400% 400%;
    animation: meshMove 20s ease infinite;
}
@keyframes meshMove { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
