/* ================== FAQ DROPDOWNS ================== */
.faq-title{
  text-align:center;
  font-size:1.8em;
  font-weight:700;
  font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:#1f2937;
  margin: 1.5rem 0 1rem;
}

.faq details{
  max-width: 880px;
  margin: 0.85rem auto;
  border-radius: 14px;
  background: linear-gradient(145deg,#ffffff,#f8f9fb);
  border: 1px solid #d8dee4;
  box-shadow: 0 4px 12px rgba(0,0,0,.06);
  overflow: hidden;
  transition: box-shadow .35s ease, border-color .35s ease, transform .25s ease;
}
.faq details:hover{
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
}
.faq details[open]{
  border-color: #a4c8ff;
  box-shadow: 0 10px 22px rgba(0,0,0,.1);
}

.faq summary{
  position: relative;
  padding: 1rem 2.4rem 1rem 1.2rem;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
  font-family: "Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after{
  content:"";
  position:absolute;
  right:1.1rem;
  top:50%;
  width:0.55em;
  height:0.55em;
  border-right:2px solid #4a76ff;
  border-bottom:2px solid #4a76ff;
  transform: translateY(-50%) rotate(45deg);
  transition: transform .35s ease;
}
.faq details[open] summary::after{
  transform: translateY(-50%) rotate(225deg);
}

.faq h6 {
  font-weight: 600;
  margin: 0.5rem 0;
}

.faq .answer{
  max-height:0;
  opacity:0;
  overflow:hidden;
  padding:0 1.2rem;
  font-weight: 400;
  color:#333;
  line-height:1.6;
  transform: translateY(-4px);
  transition: max-height .55s cubic-bezier(.4,0,.2,1),
             opacity .55s ease,
             transform .55s ease,
             padding .2s ease;
}
.faq details[open] .answer{
  max-height: none;
  opacity: 1;
  transform: translateY(0);
  padding: 0 1.2rem 1rem;
}

.faq p { margin: 0 0 .65rem; }
