*{
box-sizing:border-box;
margin:0;
padding:0;
}

body{
font-family: "Inter", Arial, Helvetica, sans-serif;
background: radial-gradient(circle at top, #12022b, #020617 70%);
color:white;
min-height:100vh;
}

/* ===== HERO ===== */
.faq-hero{
text-align:center;
padding:80px 20px 50px;
}

.faq-hero h1{
font-size:44px;
font-weight:700;
background:linear-gradient(90deg,#8b5cf6,#a855f7,#6366f1);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
margin-bottom:10px;
}

.faq-hero p{
max-width:650px;
margin:auto;
opacity:0.85;
line-height:1.7;
font-size:16px;
}

/* ===== CATEGORY BUTTONS ===== */
.faq-categories{
margin-top:35px;
display:flex;
flex-wrap:wrap;
gap:12px;
justify-content:center;
}

.faq-categories button{
padding:12px 22px;
border-radius:30px;
border:1px solid #7c3aed;
background:rgba(255,255,255,0.02);
color:#a78bfa;
cursor:pointer;
font-size:14px;
transition:0.3s;
backdrop-filter:blur(8px);
}

.faq-categories button:hover{
background:#7c3aed;
color:white;
box-shadow:0 0 18px rgba(124,58,237,0.6);
}

.faq-categories button.active{
background:#7c3aed;
color:white;
box-shadow:0 0 20px rgba(124,58,237,0.7);
}

/* ===== FAQ CONTAINER ===== */
.faq-container{
max-width:780px;
margin:auto;
padding:10px 20px 60px;
}

/* ===== FAQ CARD ===== */
.faq-item{
background:rgba(18,18,40,0.6);
border:1px solid rgba(255,255,255,0.08);
border-radius:16px;
margin-bottom:14px;
overflow:hidden;
transition:0.3s;
backdrop-filter:blur(12px);
}

.faq-item:hover{
border-color:#7c3aed;
box-shadow:0 0 15px rgba(124,58,237,0.2);
}

/* ===== QUESTION ===== */
.faq-question{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 22px;
cursor:pointer;
font-weight:500;
font-size:16px;
}

.faq-question span{
color:#f1f5f9;
}

/* ===== ICON ===== */
.icon{
font-size:22px;
color:#a78bfa;
transition:0.25s;
}

/* ===== ANSWER ===== */
.faq-answer{
max-height:0;
overflow:hidden;
transition:max-height 0.45s ease;
padding:0 22px;
}

.faq-answer span{
display:block;
padding-bottom:20px;
color:#cbd5e1;
line-height:1.7;
font-size:15px;
}

/* OPEN STATE */
.faq-item.active .faq-answer{
max-height:300px;
}

/* ===== MOBILE ===== */
@media (max-width:768px){

.faq-hero{
padding:60px 20px 30px;
}

.faq-hero h1{
font-size:34px;
}

.faq-question{
font-size:15px;
}

}

/* ===== SMALL MOBILE ===== */
@media (max-width:480px){

.faq-categories{
gap:8px;
}

.faq-categories button{
padding:10px 16px;
font-size:13px;
}

}
