.faq-wrap{max-width:980px;margin:0 auto}
.qalist{border-top:1px solid var(--hair)}
.qa{border-bottom:1px solid var(--hair)}
.qq{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 4px;cursor:pointer;font-size:clamp(19px,2.2vw,24px);line-height:1.35;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.qq:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:0}
.qi{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--mist);position:relative;transition:transform .5s var(--ease),background .25s}
.qi::before,.qi::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--ink);border-radius:0;transform:translate(-50%,-50%);transition:transform .5s var(--ease)}
.qi::after{transform:translate(-50%,-50%) rotate(90deg)}
.qa.open .qi{background:var(--ink);transform:rotate(180deg)}
.qa.open .qi::before,.qa.open .qi::after{background:#fff}
.qa.open .qi::after{transform:translate(-50%,-50%) rotate(0deg)}
.qp{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease)}
.qp>div{overflow:hidden}
.qp p{padding:0 56px 28px 4px;font-size:19px;line-height:1.65;color:var(--slate);opacity:0;transform:translateY(-6px);transition:opacity .5s var(--ease) .05s,transform .5s var(--ease) .05s}
.qa.open .qp{grid-template-rows:1fr}
.qa.open .qp p{opacity:1;transform:none}
.faq-note{margin-top:28px;font-size:15px;color:var(--slate)}
@media(max-width:760px){.qp p{padding-right:8px;font-size:17px}.qq{padding:20px 2px}}
@media(prefers-reduced-motion:reduce){.qp,.qp p,.qi,.qi::before,.qi::after{transition:none}}