/* ===== FAQ ===== */
.faq{padding:clamp(16px,2vw,32px) 0 clamp(80px,10vw,130px)}
.faq__nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(40px,5vw,64px)}
.faq__nav a{padding:10px 20px;border:1px solid var(--line);font-size:13px;letter-spacing:.1em;color:var(--ink-soft);transition:all .2s}
.faq__nav a:hover{border-color:var(--forest);color:var(--forest)}
.faq__cat{display:grid;grid-template-columns:1fr 2.4fr;gap:clamp(24px,6vw,96px);align-items:start;scroll-margin-top:96px}
.faq__cat + .faq__cat{margin-top:clamp(56px,7vw,88px)}
.faq__cat h2{font-size:clamp(17px,1.7vw,20px);font-weight:500;letter-spacing:.14em;color:var(--forest)}
.qa{border-top:1px solid var(--line)}
.qa details{border-bottom:1px solid var(--line)}
.qa summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:2em 1fr 20px;gap:8px;align-items:center;padding:20px 0;font-size:15px;letter-spacing:.06em;line-height:1.8}
.qa summary::-webkit-details-marker{display:none}
.qa summary::before{content:"Q";font-family:var(--en);font-size:18px;color:var(--moss)}
.qa summary::after{content:"";width:12px;height:12px;justify-self:end;border-right:1px solid var(--forest);border-bottom:1px solid var(--forest);transform:rotate(45deg) translateY(-3px);transition:transform .25s}
.qa details[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.qa summary:hover{color:var(--forest)}
.qa .a{display:grid;grid-template-columns:2em 1fr;gap:8px;padding:0 28px 24px 0;font-size:14px;color:var(--ink-soft);line-height:2}
.qa .a::before{content:"A";font-family:var(--en);font-size:18px;color:var(--forest);line-height:1.6}
.qa .a a{color:var(--forest);border-bottom:1px solid currentColor}
@media (max-width:860px){ .faq__cat{grid-template-columns:1fr;gap:16px} }
