/* FAQ motion: steady question rows, brief answer fades, quiet state feedback. */
body[data-page="faq"]{--faq-motion-ease:cubic-bezier(.22,1,.36,1)}
body[data-page="faq"] [data-faq-reveal]{opacity:1}
body[data-page="faq"] .faq-list details{position:relative;transition:background-color .2s ease,border-color .2s ease}
body[data-page="faq"] .faq-list details::before{content:"";position:absolute;left:-2px;top:16px;bottom:16px;width:2px;background:linear-gradient(var(--violet),var(--gold));opacity:0;transform:scaleY(.55);transform-origin:top;pointer-events:none;transition:opacity .18s ease,transform .28s var(--faq-motion-ease)}
body[data-page="faq"] .faq-list details[open]::before{opacity:1;transform:scaleY(1)}
body[data-page="faq"] .faq-list summary{transition:color .18s ease,background-color .18s ease}
body[data-page="faq"] .faq-list summary::after{transition:color .18s ease}
body[data-page="faq"] .faq-list details:focus-within{border-color:var(--violet)}
body[data-page="faq"] .faq-list summary:focus-visible{color:var(--purple)}
body[data-page="faq"] .contact-call,
body[data-page="faq"] .contact-save{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}
body[data-page="faq"] .contact-save:hover{transform:none}
body[data-page="faq"] .contact-email{transition:color .18s ease}
body[data-page="faq"] .contact-hub-form{transition:border-color .2s ease,box-shadow .2s ease}
body[data-page="faq"] .contact-hub-form:focus-within{border-color:#b49bc4;box-shadow:0 0 0 3px #7944a60c}
@media(hover:hover) and (pointer:fine){
 body[data-page="faq"] .faq-list summary:hover{color:var(--purple);background-color:#7944a609}
 body[data-page="faq"] .faq-list summary:hover::after{color:var(--purple)}
 body[data-page="faq"] .contact-save:hover{border-color:var(--violet)}
}
.motion-paused body[data-page="faq"] main>section:not([data-motion-banner]) *,
.motion-paused body[data-page="faq"] main>section:not([data-motion-banner]) *::before,
.motion-paused body[data-page="faq"] main>section:not([data-motion-banner]) *::after{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
 body[data-page="faq"] main>section:not([data-motion-banner]) *,
 body[data-page="faq"] main>section:not([data-motion-banner]) *::before,
 body[data-page="faq"] main>section:not([data-motion-banner]) *::after{animation:none!important;transition:none!important}
}
@media print{
 body[data-page="faq"] [data-faq-reveal],
 body[data-page="faq"] .faq-list details>p{opacity:1!important;transform:none!important}
 body[data-page="faq"] .faq-list details::before{display:none}
}
