/* ================================
FAQ SECTION BACKGROUND
================================ */

.home-faq.v4{
  position: relative;
  padding: 80px 20px;
  overflow: hidden;

  background:
    radial-gradient(1000px 500px at 5% -10%, rgba(79,211,255,.20), transparent 60%),
    radial-gradient(800px 400px at 95% -10%, rgba(0,255,213,.18), transparent 60%),
    linear-gradient(180deg,#020617 0%,#030b1a 100%);
}


/* container */
.home-faq.v4 .container{
  position: relative;
}


/* ================================
LAYOUT
================================ */

.home-faq.v4 .faq-wrap{
  max-width: 1120px;
  margin: 120px auto 0;
  display: grid;
  gap: 16px;
}


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

.home-faq.v4 .faq-card{
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(7,18,40,.40), rgba(7,18,40,.26));
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  box-shadow:
    0 28px 90px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.08);

  overflow: hidden;
  position: relative;
}


/* subtle glow inside cards */

.home-faq.v4 .faq-card::before{
  content:"";
  position:absolute;
  inset:0;

  background:
    radial-gradient(600px 160px at 12% 0%, rgba(79,211,255,.14), transparent 60%),
    radial-gradient(520px 140px at 86% 0%, rgba(0,255,213,.10), transparent 60%);

  opacity:.9;
  pointer-events:none;
}


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

.home-faq.v4 .faq-header{
  padding:22px;
}

@media (min-width:980px){

  .home-faq.v4 .faq-header{
    padding:26px 28px;
  }

}


.home-faq.v4 .faq-eyebrow{

  margin:0 0 12px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:12px;

  color:#fff;

  display:inline-flex;
  align-items:center;
  gap:10px;
}


.home-faq.v4 .faq-eyebrow::after{

  content:"";
  height:1px;
  width:54px;

  background:linear-gradient(90deg, rgba(79,211,255,.80), rgba(0,255,213,.35));

}


.home-faq.v4 .faq-title{

  margin:0 0 10px;

  font-size:clamp(28px,2.5vw,44px);
  line-height:1.06;

  font-weight:950;
  letter-spacing:-.03em;

  color:#fff;

  text-shadow:0 18px 52px rgba(0,0,0,.55);
}


.home-faq.v4 .faq-kicker{

  margin:12px 0 16px;
  max-width:70ch;

  font-size:17px;
  line-height:1.85;

  color:#fff;
  font-weight:650;
}


/* ================================
POINTS
================================ */

.home-faq.v4 .faq-points{

  list-style:none;
  padding:14px;
  margin:0 0 16px;

  display:grid;
  gap:10px;

  border-radius:40px;

  border:1px solid rgba(255,255,255,.18);

  background:rgba(255,255,255,.04);

  box-shadow:inset 0 5px 0 rgb(123,208,148);

}


.home-faq.v4 .faq-points li{

  display:flex;
  align-items:center;
  gap:10px;

  color:rgba(255,255,255,.82);
  font-weight:700;

}


.home-faq.v4 .faq-points .dot{

  width:10px;
  height:10px;

  border-radius:999px;

  background:linear-gradient(135deg, rgba(79,211,255,.95), rgba(0,255,213,.75));

}


/* ================================
CTA BUTTON
================================ */

.home-faq.v4 .faq-btn{

  display:inline-flex;
  align-items:center;
  gap:10px;

  padding:14px 18px;

  border-radius:999px;

  font-weight:950;
  font-size:15px;

  text-decoration:none;

  color:#fff;

  background:linear-gradient(90deg, rgba(79,211,255,.20), rgba(0,255,213,.12));

  border:1px solid rgba(255,255,255,.14);

  box-shadow:0 26px 78px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.12);

  transition:all .2s ease;

}


.home-faq.v4 .faq-btn:hover{

  transform:translateY(-2px);

  border-color:rgba(79,211,255,.28);

  filter:brightness(1.04);

}


.faq-cta{
  text-align:center;
  margin-top:40px;
}


/* ================================
FAQ LIST
================================ */

.home-faq.v4 .faq-list{
  padding:12px;
}


.home-faq.v4 .faq-item{

  border-radius:18px;

  border:1px solid rgba(255,255,255,.10);

  background:rgba(0,0,0,.12);

  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);

  overflow:hidden;

  transition:.2s;

}


.home-faq.v4 .faq-item + .faq-item{
  margin-top:10px;
}


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

.home-faq.v4 .faq-q{

  width:100%;
  border:0;
  background:transparent;

  cursor:pointer;

  text-align:left;

  padding:16px;

  display:grid;

  grid-template-columns:108px 1fr 44px;

  gap:14px;

  align-items:center;

}


.home-faq.v4 .faq-meta{

  display:flex;
  flex-direction:column;

  gap:8px;

  min-width:108px;

}


.home-faq.v4 .faq-badge{

  width:56px;
  height:28px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;

  font-weight:900;
  font-size:14px;

  color:#fff;

  border:1px solid rgba(255,255,255,.14);

  background:linear-gradient(90deg, rgba(79,211,255,.22), rgba(0,255,213,.10));

}


.home-faq.v4 .faq-tag{

  padding:6px 10px;

  border-radius:999px;

  font-size:13px;

  border:1px solid rgba(255,255,255,.12);

  background:rgba(255,255,255,.05);

  color:#fff;

}


.home-faq.v4 .faq-text{

  font-size:16px;

  font-weight:900;

  color:#fff;

}


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

.home-faq.v4 .faq-ico{

  width:40px;
  height:40px;

  border-radius:14px;

  border:1px solid rgba(255,255,255,.12);

  background:rgba(255,255,255,.05);

  display:grid;
  place-items:center;

  position:relative;

}


.home-faq.v4 .faq-ico i{

  position:absolute;

  width:14px;
  height:2px;

  background:rgba(79,211,255,.92);

}


.home-faq.v4 .faq-ico i:last-child{
  transform:rotate(90deg);
}


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

.home-faq.v4 .faq-a{

   max-height:0;
  overflow:hidden;

  opacity:0;
  transform:translateY(-6px);

  transition:
    max-height .35s ease,
    opacity .25s ease,
    transform .25s ease;
}

.faq-item.is-open .faq-a{
  opacity:1;
  transform:translateY(0);
}




.home-faq.v4 .faq-a-inner{

  padding:0 16px 16px;

}


.home-faq.v4 .faq-a-inner p{

  margin:0;

  font-size:15px;

  line-height:1.85;

  color:rgba(255,255,255,.9);

}


/* ================================
OPEN STATE
================================ */

.home-faq.v4 .faq-item.is-open{

  border-color:rgba(79,211,255,.26);

  box-shadow:0 22px 72px rgba(0,0,0,.34);

}


.home-faq.v4 .faq-item.is-open .faq-ico i:last-child{
  opacity:0;
}


/* ================================
MOBILE
================================ */

@media (max-width:768px){

  .home-faq.v4 .faq-q{
    grid-template-columns:1fr 40px;
  }

  .home-faq.v4 .faq-meta{
    display:none;
  }

  .home-faq.v4 .faq-text{
    font-size:15px;
  }

  .home-faq.v4 .faq-a-inner p{
    font-size:14px;
  }

}


/* ================================
ACCESSIBILITY
================================ */

.home-faq.v4 .faq-q:focus-visible{

  outline:2px solid rgba(79,211,255,.55);
  outline-offset:3px;

}


@media (prefers-reduced-motion: reduce){

  .home-faq.v4 *{
    transition:none !important;
  }

}