:root{
 --faq-orange:#f35c1b;
 --faq-blue:#1733c4;
 --faq-yellow:#ffb516;
 --faq-cream:#fff8ed;
 --faq-border:#e8e8e8;
 --faq-muted:#5f6470;
}

.faq-home,
.faq-page{
 background:#fff;
 padding:88px 0 100px;
}

.faq-page{
 background:var(--faq-cream);
}

.faq-home-head,
.faq-page-head{
 text-align:center;
 max-width:850px;
 margin:0 auto 38px;
}

.faq-home-head h2,
.faq-page-head h2{
 margin:8px 0 12px;
 color:var(--faq-orange);
 font-size:clamp(2.3rem,4.6vw,4.8rem);
 line-height:.95;
 font-weight:1000;
 letter-spacing:-.05em;
}

.faq-home-head p,
.faq-page-head p{
 margin:0 auto;
 max-width:720px;
 color:var(--faq-muted);
 font-size:1.02rem;
 line-height:1.65;
}

.faq-accordion{
 max-width:1060px;
 margin:0 auto;
 display:grid;
 gap:10px;
}

.faq-card{
 border:1px solid var(--faq-border);
 background:#fff;
 border-radius:10px;
 overflow:hidden;
 box-shadow:0 4px 18px rgba(15,23,42,.035);
}

.faq-card summary{
 list-style:none;
 display:grid;
 grid-template-columns:44px minmax(0,1fr) 28px;
 align-items:center;
 gap:15px;
 min-height:70px;
 padding:12px 18px;
 cursor:pointer;
 color:#161616;
}

.faq-card summary::-webkit-details-marker{
 display:none;
}

.faq-card-icon{
 width:34px;
 height:34px;
 display:grid;
 place-items:center;
 background:#fff;
 border:1px solid #ddd;
 border-radius:5px;
 color:#111;
 font-size:.9rem;
 transition:.18s ease;
}

.faq-card summary strong{
 font-size:1rem;
 font-weight:800;
 line-height:1.35;
}

.faq-card-chevron{
 justify-self:end;
 color:#222;
 transition:.2s ease;
}

.faq-card[open]{
 border-color:rgba(243,92,27,.45);
}

.faq-card[open] .faq-card-icon{
 background:var(--faq-orange);
 border-color:var(--faq-orange);
 color:#fff;
}

.faq-card[open] .faq-card-chevron{
 transform:rotate(180deg);
 color:var(--faq-orange);
}

.faq-card-answer{
 padding:0 62px 22px 77px;
}

.faq-card-answer p{
 margin:0;
 color:#555b66;
 line-height:1.7;
 font-size:.98rem;
}

.faq-card-answer a{
 display:inline-flex;
 align-items:center;
 gap:7px;
 margin-top:13px;
 color:var(--faq-orange);
 font-size:.74rem;
 font-weight:1000;
 text-transform:uppercase;
 letter-spacing:.055em;
 border-bottom:2px solid currentColor;
 padding-bottom:3px;
}

.faq-home-more{
 text-align:center;
 margin-top:28px;
}

.faq-home-more a{
 display:inline-flex;
 align-items:center;
 gap:8px;
 background:var(--faq-orange);
 color:#fff;
 padding:13px 19px;
 font-size:.75rem;
 font-weight:1000;
 text-transform:uppercase;
 letter-spacing:.06em;
}

@media(max-width:767.98px){
 .faq-home,
 .faq-page{
  padding:60px 0 72px;
 }

 .faq-home-head,
 .faq-page-head{
  text-align:left;
  margin-bottom:28px;
 }

 .faq-card summary{
  grid-template-columns:38px minmax(0,1fr) 24px;
  gap:10px;
  min-height:62px;
  padding:10px 12px;
 }

 .faq-card-icon{
  width:32px;
  height:32px;
 }

 .faq-card summary strong{
  font-size:.94rem;
 }

 .faq-card-answer{
  padding:0 14px 18px 60px;
 }

 .faq-card-answer p{
  font-size:.93rem;
 }

 .faq-home-more{
  text-align:left;
 }
}
