#faq { padding:64px 0; scroll-margin-top:76px; }
#faq .faq-grid { display:block; }
#faq .faq-head { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:28px; }
#faq .eyebrow { font-size:10px; letter-spacing:.17em; margin-bottom:12px; }
#faq h2 { font-family:Georgia,"Times New Roman",serif; font-size:clamp(36px,4vw,50px); font-weight:400; line-height:1.1; letter-spacing:-.025em; margin:0; }
#faq .faq-lead { max-width:360px; margin:0 0 3px; color:var(--muted); font-size:14px; line-height:1.7; }
#faq .faq-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:18px; }
#faq .faq-column { display:grid; align-content:start; gap:10px; min-width:0; }
#faq .faq-item { margin:0; padding:0; border:1px solid #ded6c8; border-radius:9px; background:#fdfcf9; transition:border-color 160ms ease,background 160ms ease,box-shadow 160ms ease; }
#faq .faq-item:hover { border-color:#bda77f; }
#faq .faq-item[open] { border-color:#c6b18a; background:#fff; box-shadow:0 5px 18px #33291a07; }
#faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; padding:17px 19px; min-height:66px; font-size:14px; font-weight:600; line-height:1.5; cursor:pointer; }
#faq summary::-webkit-details-marker { display:none; }
#faq summary::marker { content:""; }
#faq summary:focus-visible { outline:2px solid var(--accent); outline-offset:3px; border-radius:8px; }
#faq .faq-question { min-width:0; }
#faq .faq-toggle { width:27px; height:27px; border:1px solid #e4dccd; border-radius:50%; position:relative; flex:0 0 auto; color:var(--accent-dark); background:#f6f2ea; }
#faq .faq-toggle::before,#faq .faq-toggle::after { content:""; position:absolute; width:9px; height:1px; background:currentColor; top:12px; left:8px; }
#faq .faq-toggle::after { transform:rotate(90deg); transition:transform 160ms ease; }
#faq details[open] .faq-toggle { background:var(--accent-dark); border-color:var(--accent-dark); color:#fff; }
#faq details[open] .faq-toggle::after { transform:rotate(0); }
#faq .faq-answer { margin:0; padding:0 60px 20px 19px; color:var(--muted); font-size:13px; line-height:1.8; }
#faq .faq-help { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid #ded5c6; margin-top:26px; padding-top:22px; }
#faq .faq-help p { margin:0; font-size:13px; line-height:1.6; }
#faq .faq-help strong { display:block; font-weight:600; color:var(--ink); }
#faq .faq-help p span { display:block; color:var(--muted); font-size:12px; margin-top:3px; }
#faq .faq-contact-link { min-height:44px; display:inline-flex; justify-content:space-between; align-items:center; gap:30px; border:1px solid var(--ink); border-radius:6px; padding:11px 17px; background:var(--ink); color:#fff; font-size:12px; font-weight:650; white-space:nowrap; }
#faq .faq-contact-link:hover { background:var(--accent-dark); border-color:var(--accent-dark); }
#faq .faq-contact-link:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
@media(max-width:840px) {
    #faq { padding:48px 0; }
    #faq .faq-head { gap:28px; }
    #faq .faq-lead { max-width:300px; font-size:13px; }
    #faq .faq-list { gap:12px; }
    #faq summary { font-size:13px; padding:15px; gap:14px; }
    #faq .faq-answer { padding:0 48px 18px 15px; font-size:12px; }
}
@media(max-width:620px) {
    #faq { padding:38px 0; scroll-margin-top:72px; }
    #faq .faq-head { display:block; margin-bottom:22px; }
    #faq .eyebrow { font-size:9px; margin-bottom:10px; }
    #faq h2 { font-size:36px; }
    #faq .faq-lead { max-width:none; margin:12px 0 0; font-size:13px; }
    #faq .faq-list { grid-template-columns:1fr; gap:10px; }
    #faq summary { min-height:62px; font-size:13px; padding:15px; }
    #faq .faq-answer { padding:0 15px 18px; font-size:12px; }
    #faq .faq-help { flex-direction:column; align-items:flex-start; gap:15px; margin-top:22px; padding-top:20px; }
    #faq .faq-help p { font-size:12px; }
    #faq .faq-help p span { font-size:11px; }
    #faq .faq-contact-link { min-width:140px; }
}
@media(prefers-reduced-motion:reduce) {
    #faq .faq-item,#faq .faq-toggle::after { transition:none; }
}
