
.chb-service-faq{
  --gold:#b79b3a;
  --ink:#19212d;
  --muted:#6d7478;
  --line:#d9dcdd;
  padding:108px 0 120px;
  background:#fff;
  color:var(--ink);
}

.chb-service-faq *,
.chb-service-faq *:before,
.chb-service-faq *:after{
  box-sizing:border-box;
}

.chb-service-faq__shell{
  width:min(1500px,calc(100% - 56px));
  margin:0 auto;
}

.chb-service-faq__header{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.55fr);
  gap:90px;
  align-items:end;
  margin-bottom:64px;
}

.chb-service-faq__heading>span{
  display:block;
  margin-bottom:18px;
  color:var(--gold);
  font-family:"Lemon Milk",Arial,sans-serif;
  font-size:7px;
  line-height:1;
  letter-spacing:.16em;
}

.chb-service-faq__heading h2{
  margin:0;
  max-width:820px;
  font-family:"Lemon Milk",Arial,sans-serif;
  font-size:clamp(48px,4.7vw,76px);
  line-height:.93;
  letter-spacing:-.05em;
  font-weight:500;
}

.chb-service-faq__summary{
  position:relative;
  padding-left:26px;
  padding-bottom:4px;
}

.chb-service-faq__rule{
  position:absolute;
  left:0;
  top:4px;
  bottom:4px;
  width:2px;
  background:var(--gold);
}

.chb-service-faq__summary p{
  max-width:460px;
  margin:0 0 18px;
  color:var(--muted);
  font-size:13px;
  line-height:1.75;
}

.chb-service-faq__summary small{
  display:block;
  color:var(--gold);
  font-family:"Lemon Milk",Arial,sans-serif;
  font-size:5px;
  letter-spacing:.14em;
}

.chb-service-faq__items{
  border-top:1px solid var(--line);
}

.chb-service-faq__items article{
  border-bottom:1px solid var(--line);
}

.chb-service-faq__items button{
  width:100%;
  min-height:102px;
  padding:0 8px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 38px;
  gap:18px;
  align-items:center;
  border:0;
  background:transparent;
  color:var(--ink);
  text-align:left;
  cursor:pointer;
}

.chb-service-faq__items button>span{
  color:var(--gold);
  font-family:"Lemon Milk",Arial,sans-serif;
  font-size:6px;
  letter-spacing:.08em;
}

.chb-service-faq__items button strong{
  max-width:1100px;
  font-family:"Lemon Milk",Arial,sans-serif;
  font-size:18px;
  line-height:1.12;
  letter-spacing:-.02em;
  font-weight:500;
  transition:color .18s ease;
}

.chb-service-faq__items button b{
  position:relative;
  width:20px;
  height:20px;
  justify-self:end;
}

.chb-service-faq__items button b:before,
.chb-service-faq__items button b:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:15px;
  height:1px;
  background:var(--ink);
  transform:translate(-50%,-50%);
  transition:transform .2s ease,background .2s ease;
}

.chb-service-faq__items button b:after{
  transform:translate(-50%,-50%) rotate(90deg);
}

.chb-service-faq__items article.is-open button b:after{
  transform:translate(-50%,-50%) rotate(0deg);
}

.chb-service-faq__items article.is-open button strong,
.chb-service-faq__items article:hover button strong{
  color:var(--gold);
}

.chb-service-faq__answer{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .32s cubic-bezier(.2,.7,.2,1);
}

.chb-service-faq__answer>div{
  overflow:hidden;
}

.chb-service-faq__answer p{
  max-width:940px;
  margin:0;
  padding:0 60px 0 72px;
  color:#636b6f;
  font-size:13px;
  line-height:1.82;
}

.chb-service-faq__items article.is-open .chb-service-faq__answer{
  grid-template-rows:1fr;
}

.chb-service-faq__items article.is-open .chb-service-faq__answer p{
  padding-bottom:34px;
}

@media(max-width:900px){
  .chb-service-faq__header{
    grid-template-columns:1fr;
    gap:26px;
    margin-bottom:46px;
  }

  .chb-service-faq__summary{
    max-width:620px;
  }
}

@media(max-width:760px){
  .chb-service-faq{
    padding:64px 0 72px;
  }

  .chb-service-faq__shell{
    width:calc(100% - 28px);
  }

  .chb-service-faq__header{
    display:block;
    margin-bottom:34px;
  }

  .chb-service-faq__heading>span{
    margin-bottom:13px;
    font-size:6px;
  }

  .chb-service-faq__heading h2{
    max-width:330px;
    font-size:34px;
    line-height:.96;
    letter-spacing:-.04em;
  }

  .chb-service-faq__summary{
    margin-top:22px;
    padding-left:15px;
  }

  .chb-service-faq__rule{
    width:1px;
  }

  .chb-service-faq__summary p{
    margin-bottom:11px;
    font-size:11px;
    line-height:1.65;
  }

  .chb-service-faq__summary small{
    font-size:4.5px;
  }

  .chb-service-faq__items button{
    min-height:82px;
    padding:0;
    grid-template-columns:28px minmax(0,1fr) 26px;
    gap:10px;
  }

  .chb-service-faq__items button>span{
    font-size:5px;
  }

  .chb-service-faq__items button strong{
    font-size:12px;
    line-height:1.18;
  }

  .chb-service-faq__items button b{
    width:18px;
    height:18px;
  }

  .chb-service-faq__items button b:before,
  .chb-service-faq__items button b:after{
    width:13px;
  }

  .chb-service-faq__answer p{
    padding-left:38px;
    padding-right:26px;
    font-size:11px;
    line-height:1.68;
  }

  .chb-service-faq__items article.is-open .chb-service-faq__answer p{
    padding-bottom:24px;
  }
}
