/*==================================================
    CUSTOM FAQ PLUGIN
    Modern Premium Design
==================================================*/


/*=========================
      BACKEND
=========================*/

#faq-questions-answers{
    margin:25px 0;
}

.faq-set{
    background:#fff;
    border:1px solid #e5e7eb;
    border-left:5px solid #2563eb;
    border-radius:12px;
    padding:18px;
    margin-bottom:18px;
    box-shadow:0 8px 20px rgba(0,0,0,.05);
}

.faq-set label{
    display:block;
    font-size:14px;
    font-weight:600;
    color:#111827;
    margin-bottom:8px;
}

.faq-set input[type=text],
.faq-set textarea{

    width:100%;
    border:1px solid #d1d5db;
    border-radius:8px;
    padding:12px 15px;
    font-size:15px;
    outline:none;
    transition:.3s;
    background:#fff;
    margin-bottom:15px;
    box-sizing:border-box;

}

.faq-set textarea{
    min-height:130px;
    resize:vertical;
}

.faq-set input:focus,
.faq-set textarea:focus{

    border-color:#2563eb;
    box-shadow:0 0 0 4px rgba(37,99,235,.12);

}

#add-faq{

    background:linear-gradient(135deg,#2563eb,#3b82f6);
    color:#fff;
    border:none;
    padding:13px 28px;
    border-radius:8px;
    cursor:pointer;
    font-size:15px;
    font-weight:600;
    transition:.35s;

}

#add-faq:hover{

    transform:translateY(-2px);
    box-shadow:0 10px 25px rgba(37,99,235,.35);

}

.remove-faq{

    background:#ef4444;
    color:#fff;
    border:none;
    padding:10px 18px;
    border-radius:6px;
    cursor:pointer;
    transition:.3s;

}

.remove-faq:hover{

    background:#dc2626;

}



/*=========================
      FRONTEND
=========================*/

div.faq{
    width:100%;
    margin:35px auto;
}
.faq-item{
  border-radius: 16px;
	     transition: 0.09s linear;    border-top: solid 1px var(--c-line);
    border-radius: 0;    padding: 20px 0;
}
.faq-item:hover{
    transform:translateY(-3px);
}

/* Question */

.faq-question{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
    font-size:31px;
    font-weight:500;
    color:var(--h-color);
    line-height:1.6;
    transition:.35s;     padding-right: 60px;
}
 

/* Plus Icon */

.plus-icon{

    position:absolute;
    right:0;
    top:20px;
    transform:translateY(-50%);
    width:40px;
    height:40px;
    border-radius:50%;
     background: var(--h-color);
    color:#fff;
    font-size:17px;
        font-weight: 100;
    transition:.35s;
    line-height: normal;
    text-align: center;
   outline: none;    display: flex;
    align-items: center;
    justify-content: center;

}
.plus-icon i {
  position: absolute;
  transition: 0.15s linear;   
}
.plus-icon i.fas.fa-minus {
  opacity: 0;
}
h4.faq-open i.fas.fa-minus {
  opacity: 1;
}
h4.faq-open i.fas.fa-plus {
  transform: rotate(45deg);
  opacity: 0;
}
.faq-answer li {
  margin: 0 0 15px;
  color: #4b5563;
  font-size: 16px; 
  list-style: disc;
  list-style-position: inside;
}

/* Answer */

.faq-answer{
    display:none;
    padding:25px 0;
  
}
.faq-answer p{
    margin: 0 0 15px;
    color: var(--h-color);
    font-size: 18px;
    line-height: 1.9;
    font-weight: 400;
}

.faq-answer p:last-child{

    margin-bottom:0;

}



/*=========================
     TAB BUTTONS
=========================*/

button.tab-btn{

    background:#fff;

    border:2px solid #dbe4ef;

    color:#374151;

    padding:13px 30px;

    border-radius:50px;

    cursor:pointer;

    font-weight:600;

    transition:.3s;

}

button.tab-btn:hover,
button.tab-btn.active{

    background:linear-gradient(135deg,#2563eb,#3b82f6);

    color:#fff;

    border-color:transparent;

}



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

@media (max-width:992px){

.faq-question{

    font-size:17px;

}

}

@media (max-width:768px){

div.faq{

    margin:20px 0;

}

.faq-item{

    border-radius:12px;

}

.faq-question{

    padding:18px 65px 18px 18px;

    font-size:16px;

    line-height:1.5;

}

.plus-icon{

    width:36px;
    height:36px;
    font-size:20px;
    right:15px;

}

.faq-answer{

    padding:18px;

}

.faq-answer p{

    font-size:15px;
    line-height:1.8;

}

}

@media (max-width:480px){

.faq-question{

    font-size:15px;

    padding:16px 58px 16px 15px;

}

.plus-icon{

    width:32px;
    height:32px;
    font-size:18px;

}

.faq-answer{

    padding:15px;

}

.faq-answer p{

    font-size:14px;

}

}