.page-faq .eyebrow { margin:0; color:#a14c1f; font-size:.8rem; font-weight:800; letter-spacing:.12em; }
.page-faq .lead { max-width:42em; }
.faq-index { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0 34px; }
.faq-index a { display:inline-block; border:1px solid #dcc4a2; border-radius:999px; background:#fffdf8; padding:6px 13px; text-decoration:none; font-size:.9rem; font-weight:700; }
.faq-section { scroll-margin-top:20px; margin:30px 0; }
.faq-section h2 { border-left:5px solid #db552a; padding-left:12px; margin-bottom:14px; color:#392519; }
.faq-section details { border:1px solid #e2d0b8; border-radius:10px; background:#fffdf8; margin:9px 0; overflow:hidden; }
.faq-section summary { cursor:pointer; padding:15px 18px; color:#392519; font-weight:750; line-height:1.55; }
.faq-section summary::marker { color:#b6532c; }
.faq-section summary:focus-visible { outline:3px solid #df7d39; outline-offset:-3px; }
.faq-section details[open] summary { border-bottom:1px solid #eadac5; }
.faq-section .answer { padding:2px 18px 15px; }
.faq-section .answer p { margin:10px 0 0; color:#5d4a3e; }
.faq-section .answer a { font-weight:700; }
.faq-contact { background:#fff0d7; border:1px solid #e5c9a2; border-radius:14px; padding:18px 22px; margin-top:38px; }
.faq-contact h2 { margin:0 0 4px; }
.faq-contact p { margin:0 0 15px; color:#5d4a3e; }
.faq-actions { display:flex; flex-wrap:wrap; gap:10px; }
.faq-actions a { display:inline-block; background:#fffdf8; border:1px solid #cb9e76; border-radius:8px; padding:7px 13px; font-weight:700; text-decoration:none; }
@media (max-width:560px) { .page-faq main { padding-top:23px; } .faq-section summary { padding:14px; } .faq-section .answer { padding:2px 14px 14px; } .faq-contact { padding:17px; } }
