/* Shared FAQ look: cream band, numbered cards, gold toggle */
.faq-section,
.home-faq,
.home-faq.band-beige{
  background:#f6f1ea!important;
  color:#1f1a14;
}
.faq-section .container,
.home-faq .container{
  max-width:960px;
}
.faq-section .row{
  min-height:0!important;
  margin:0!important;
}
.faq-section .how_it_work_content{
  width:100%;
  max-width:920px;
  margin:0 auto;
  padding:0 12px!important;
}
.faq-section h2.section-title,
.faq-section h2.blog-title,
.home-faq-head h2{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:500!important;
  font-size:clamp(1.85rem,4vw,2.55rem)!important;
  line-height:1.2!important;
  color:#1f1a14!important;
  text-align:center!important;
  margin:0 auto 28px!important;
}
.faq-section h2.section-title::before,
.faq-section h2.blog-title::before{
  content:"FAQ";
  display:block;
  margin-bottom:10px;
  font-family:Montserrat,Arial,sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#8a5a12;
}
.faq-section h2.section-title::after,
.faq-section h2.blog-title::after,
.home-faq-head h2::after{
  content:"";
  display:block;
  width:56px;
  height:2px;
  background:#db8f2a;
  margin:16px auto 0;
}

.faq-section .accordion{
  counter-reset:slfaq;
  display:flex;
  flex-direction:column;
  gap:12px;
  max-width:860px;
  margin:0 auto;
  background:transparent;
  border:0;
}
.faq-section .accordion-item{
  counter-increment:slfaq;
  background:#fff!important;
  border:1px solid #efe6da!important;
  border-radius:18px!important;
  margin:0!important;
  overflow:hidden;
  box-shadow:none!important;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.faq-section .accordion-item:has(.accordion-button:not(.collapsed)){
  border-color:#db8f2a!important;
  box-shadow:0 14px 32px rgba(31,26,20,.08)!important;
}
.faq-section .accordion-header,
.faq-section .accordion-header h3,
.faq-section h3.accordion-header{
  margin:0!important;
  line-height:1.4!important;
}
.faq-section .accordion-button{
  position:relative;
  display:flex!important;
  align-items:center!important;
  width:100%;
  gap:14px;
  background:#fff!important;
  color:#1f1a14!important;
  box-shadow:none!important;
  border:0!important;
  border-radius:18px!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.05rem!important;
  font-weight:500!important;
  line-height:1.4!important;
  text-align:left!important;
  padding:18px 18px 18px 68px!important;
}
.faq-section .accordion-button:focus,
.faq-section .accordion-button:not(.collapsed){
  background:#fff!important;
  color:#1f1a14!important;
  box-shadow:none!important;
}
.faq-section .accordion-button:focus-visible{
  outline:2px solid #db8f2a;
  outline-offset:-2px;
}
.faq-section .accordion-button::before{
  content:counter(slfaq,decimal-leading-zero);
  position:absolute;
  left:18px;
  top:20px;
  width:34px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.08em;
  color:#db8f2a;
  line-height:1.4;
}
.faq-section .accordion-button::after,
.faq-section .how-it-works-accordion .accordion-button::after{
  content:""!important;
  flex:0 0 28px;
  width:28px!important;
  height:28px!important;
  margin-left:auto!important;
  border:1px solid #db8f2a!important;
  border-radius:50%!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:12px 12px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23db8f2a' d='M7.2 3.2h1.6v9.6H7.2z'/%3E%3Cpath fill='%23db8f2a' d='M3.2 7.2h9.6v1.6H3.2z'/%3E%3C/svg%3E")!important;
  transform:none!important;
  position:static!important;
  top:auto!important;
  right:auto!important;
}
.faq-section .accordion-button:not(.collapsed)::after,
.faq-section .how-it-works-accordion .accordion-button:not(.collapsed)::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23db8f2a' d='M3.2 7.2h9.6v1.6H3.2z'/%3E%3C/svg%3E")!important;
}
.faq-section .accordion-body,
.faq-section .how-it-works-accordion .accordion-body{
  margin:0 18px 16px 68px!important;
  padding:12px 4px 0 0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid #efe6da!important;
  color:#5c564e!important;
  font-size:.95rem;
  line-height:1.65;
}
.faq-section .accordion-body p{
  margin:0;
  padding:0;
  border:0;
  color:#5c564e!important;
  font-size:.95rem;
  line-height:1.65;
}
.faq-section .accordion-collapse{
  border:0!important;
}

.home-faq-head{text-align:center;max-width:720px;margin:0 auto 32px}
.home-faq-eyebrow{
  display:inline-block;
  color:#8a5a12;
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-weight:600;
  margin-bottom:10px;
}
.home-faq-list{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.home-faq-item{
  background:#fff;
  border:1px solid #efe6da;
  border-radius:18px;
  overflow:hidden;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.home-faq-item.is-open{
  border-color:#db8f2a;
  box-shadow:0 14px 32px rgba(31,26,20,.08);
}
.home-faq-item h3{margin:0;line-height:1.4!important}
.home-faq-q{
  width:100%;
  display:flex;
  align-items:flex-start;
  gap:14px;
  text-align:left;
  background:#fff!important;
  color:#1f1a14!important;
  border:0!important;
  box-shadow:none!important;
  padding:18px 18px;
  cursor:pointer;
  font:inherit;
}
.home-faq-num{
  flex:0 0 auto;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.78rem;
  letter-spacing:.08em;
  color:#db8f2a;
  font-weight:600;
  min-width:2rem;
  padding-top:.2rem;
}
.home-faq-qtext{
  flex:1;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.05rem;
  font-weight:500;
  line-height:1.4;
  color:#1f1a14;
}
.home-faq-icon{
  position:relative;
  width:28px;
  height:28px;
  margin-top:1px;
  border-radius:50%;
  border:1px solid #db8f2a;
  flex:0 0 28px;
}
.home-faq-icon:before,
.home-faq-icon:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  background:#db8f2a;
  transform:translate(-50%,-50%);
  transition:transform .2s ease;
}
.home-faq-icon:before{width:12px;height:1.5px}
.home-faq-icon:after{width:1.5px;height:12px}
.home-faq-item.is-open .home-faq-icon:after{transform:translate(-50%,-50%) scaleY(0)}
.home-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}
.home-faq-item.is-open .home-faq-a{grid-template-rows:1fr}
.home-faq-a>div{overflow:hidden}
.home-faq .home-faq-a p{
  margin:0 18px 18px 18px!important;
  padding:12px 0 0 46px!important;
  border-top:1px solid #efe6da;
  font-size:.95rem;
  line-height:1.65;
  color:#5c564e!important;
}
.home-faq-a a{color:#8a5a12}

@media(max-width:575.98px){
  .faq-section .accordion-button{
    padding:16px 14px 16px 52px!important;
    font-size:.98rem!important;
  }
  .faq-section .accordion-button::before{left:14px;top:18px}
  .faq-section .accordion-body,
  .faq-section .how-it-works-accordion .accordion-body{
    margin:0 14px 16px!important;
    padding:12px 0 0!important;
  }
  .home-faq-q{padding:16px 14px;gap:10px}
  .home-faq-qtext{font-size:.98rem}
  .home-faq .home-faq-a p{margin:0 14px 16px!important;padding:12px 0 0 0!important}
}
