/* =====================================================
   WIZORA FAQ BLOCK
===================================================== */

.wizora-faq{
width:100%;
position:relative;
padding:60px 20px;
color:var(--text-color,#111827);
}

.faq-container{
max-width:1200px;
margin:auto;
}

/* ==========================================
HEADER
========================================== */

.faq-header{
text-align:center;
margin-bottom:50px;
}

.faq-title{
margin:0;
font-size:42px;
font-weight:800;
line-height:1.2;
color:var(--text-color,#111827);
}

.faq-subtitle{
margin:20px auto 0;
max-width:760px;
font-size:18px;
line-height:1.8;
color:#64748b;
}

/* ==========================================
SEARCH
========================================== */

.faq-search-wrap{
max-width:600px;
margin:0 auto 40px;
}

.faq-search{
width:100%;
padding:16px 20px;
border:1px solid #e5e7eb;
border-radius:12px;
font-size:16px;
outline:none;
transition:.3s;
}

.faq-search:focus{
border-color:var(--primary-color);
box-shadow:0 0 0 4px rgba(37,99,235,.08);
}

/* ==========================================
GRID
========================================== */

.faq-list{
display:grid;
gap:20px;
}

.faq-columns-1{
grid-template-columns:1fr;
}

.faq-columns-2{
grid-template-columns:repeat(2,1fr);
}

.faq-columns-3{
grid-template-columns:repeat(3,1fr);
}

/* ==========================================
CARD
========================================== */

.faq-item{
background:#fff;
border:1px solid #e5e7eb;
border-radius:16px;
overflow:hidden;
transition:.3s;
}

.faq-item:hover{
transform:translateY(-4px);
box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.faq-featured{
border:2px solid var(--primary-color);
}

/* ==========================================
QUESTION
========================================== */

.faq-question{
display:flex;
align-items:center;
gap:16px;
width:100%;
padding:22px;
background:none;
border:none;
cursor:pointer;
text-align:left;
font-size:17px;
font-weight:700;
color:inherit;
}

.faq-question:hover{
color:var(--primary-color);
}

.faq-question-text{
flex:1;
}

/* ==========================================
NUMBER
========================================== */

.faq-number{
width:34px;
height:34px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:var(--primary-color);
color:#fff;
font-size:13px;
font-weight:700;
flex-shrink:0;
}

/* ==========================================
ICON
========================================== */

.faq-icon{
width:42px;
height:42px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#eef4ff;
color:var(--primary-color);
font-size:18px;
flex-shrink:0;
}

/* ==========================================
TOGGLE
========================================== */

.faq-toggle{
margin-left:auto;
display:flex;
align-items:center;
justify-content:center;
transition:.35s;
}

.faq-item.active .faq-toggle{
transform:rotate(180deg);
}

/* ==========================================
ANSWER
========================================== */

.faq-answer{
max-height:0;
overflow:hidden;
transition:max-height .35s ease;
}

.faq-answer-inner{
padding:0 22px 22px;
font-size:16px;
line-height:1.8;
color:#475569;
}

.faq-item.active .faq-answer{
max-height:800px;
}

/* ==========================================
CATEGORY
========================================== */

.faq-category{
display:inline-block;
margin-top:20px;
padding:6px 14px;
border-radius:999px;
background:#eef4ff;
color:var(--primary-color);
font-size:13px;
font-weight:600;
}

/* ==========================================
CARD STYLES
========================================== */

.faq-style-modern .faq-item{
background:#fff;
}

.faq-style-shadow .faq-item{
border:none;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.faq-style-bordered .faq-item{
border:2px solid #dbe4f0;
}

.faq-style-minimal .faq-item{
border:none;
border-bottom:1px solid #e5e7eb;
border-radius:0;
box-shadow:none;
}

.faq-style-glass .faq-item{
background:rgba(255,255,255,.65);
backdrop-filter:blur(18px);
-webkit-backdrop-filter:blur(18px);
border:1px solid rgba(255,255,255,.4);
}

/* ==========================================
ICON POSITION
========================================== */

.faq-icon-right .faq-question{
flex-direction:row-reverse;
}

.faq-icon-right .faq-question-text{
text-align:left;
}

/* ==========================================
ANIMATIONS
========================================== */

.faq-animation-fade .faq-item{
animation:faqFade .6s ease both;
}

.faq-animation-slide .faq-item{
animation:faqSlide .6s ease both;
}

.faq-animation-zoom .faq-item{
animation:faqZoom .6s ease both;
}

@keyframes faqFade{
from{
opacity:0;
}
to{
opacity:1;
}
}

@keyframes faqSlide{
from{
opacity:0;
transform:translateY(40px);
}
to{
opacity:1;
transform:none;
}
}

@keyframes faqZoom{
from{
opacity:0;
transform:scale(.9);
}
to{
opacity:1;
transform:scale(1);
}
}

/* ==========================================
RESPONSIVE
========================================== */

@media(max-width:992px){

.faq-columns-2,
.faq-columns-3{
grid-template-columns:1fr;
}

}

@media(max-width:768px){

.wizora-faq{
padding:50px 20px;
}

.faq-title{
font-size:34px;
}

.faq-subtitle{
font-size:17px;
}

.faq-question{
padding:18px;
font-size:16px;
}

.faq-answer-inner{
padding:0 18px 18px;
}

.faq-icon{
width:36px;
height:36px;
font-size:16px;
}

.faq-number{
width:30px;
height:30px;
font-size:12px;
}

}