.faq-section {
    max-width: 1080px; margin: 70px auto; padding: 20px;
}
.faq-head { text-align: center; margin-bottom: 40px; }
.faq-title {
    font-family: Sahel-SemiBold; font-size: 34px; margin: 0 0 24px;
    color: var(--color0602);
}
.faq-search {
    position: relative; max-width: 440px; margin: 0 auto;
    display: flex; align-items: center;
}
.faq-search i {
    position: absolute; right: 18px;
    color: color-mix(in srgb, var(--color0602) 40%, transparent);
}
.faq-search input {
    width: 100%; direction: rtl;
    padding: 15px 48px 15px 18px; border-radius: 50px;
    font-family: Sahel-Light; font-size: 15px;
    color: var(--color0602);
    background: var(--color0601);
    border: 1px solid color-mix(in srgb, var(--color0602) 12%, transparent);
    outline: none; transition: border-color 0.3s, box-shadow 0.3s;
}
.faq-search input:focus {
    border-color: var(--color0603);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--color0603) 15%, transparent);
}
.faq-search input::placeholder {
    color: color-mix(in srgb, var(--color0602) 70%, transparent);
}
.faq-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 22px;
}
.faq-card {
    position: relative; overflow: hidden;
    padding: 26px 24px; border-radius: 20px;
    background: var(--color0601);
    border: 1px solid color-mix(in srgb, var(--color0602) 8%, transparent);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.faq-card::before {
    content: ''; position: absolute; top: 0; right: 0; left: 0; height: 4px;
    background: linear-gradient(90deg, var(--color0603), var(--color0604));
    transform: scaleX(0); transform-origin: right; transition: transform 0.4s ease;
}
.faq-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px color-mix(in srgb, var(--color0602) 12%, transparent);
}
.faq-card:hover::before { transform: scaleX(1); }
.faq-card-top { display: flex; align-items: flex-start; gap: 14px; direction: rtl; }
.faq-ic {
    width: 44px; height: 44px; border-radius: 14px; flex-shrink: 0;
    display: grid; place-items: center; font-size: 18px; color: #fff;
    background: linear-gradient(135deg, var(--color0603), var(--color0604));
}
.faq-card-top h6 {
    margin: 8px 0 0; text-align: right;
    font-family: Sahel-SemiBold; font-size: 16px; color: var(--color0602);
    line-height: 1.6;
}
.faq-card-body {
    direction: rtl; text-align: justify; overflow: hidden;
    max-height: 0; opacity: 0;
    font-family: Sahel-Light; font-size: 14px;
    color: color-mix(in srgb, var(--color0602) 62%, transparent);
    transition: max-height 0.45s ease, opacity 0.35s ease, margin 0.35s ease;
}
.faq-card.open .faq-card-body { max-height: 400px; opacity: 1; margin-top: 16px; }
.faq-more {
    margin-top: 16px; direction: rtl;
    display: inline-flex; align-items: center; gap: 8px;
    background: none; border: none; cursor: pointer;
    font-family: Sahel-SemiBold; font-size: 14px; color: var(--color0603);
}
.faq-more i { transition: transform 0.3s ease; }
.faq-card.open .faq-more i { transform: rotate(-90deg); }
.faq-empty {
    display: none; text-align: center; margin-top: 30px;
    font-family: Sahel-Light; color: color-mix(in srgb, var(--color0602) 50%, transparent);
}
@media (max-width: 600px) {
    .faq-section { margin: 40px 10px; }
    .faq-title { font-size: 26px; }
    .faq-grid { grid-template-columns: 1fr; }
}
