/* FAQ condivise: colori e tipografia vengono personalizzati da ogni pagina. */
.fx-faq{background:var(--faq-bg,#f8f9fa)!important;color:var(--faq-text,#1f1a17)!important;padding:clamp(3rem,6vw,5rem) 1rem!important;font-family:var(--faq-body-font,inherit);}
.fx-faq>div{max-width:860px;margin:0 auto;}
.fx-faq h2{color:var(--faq-text,#1f1a17);text-align:center;margin:0 0 2rem;font-family:var(--faq-heading-font,inherit);font-size:clamp(1.35rem,3vw,2rem);line-height:1.25;}
.fx-faq details{background:var(--faq-surface,#fff);border:1px solid var(--faq-border,rgba(0,0,0,.12));border-radius:10px;margin:.8rem 0;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.04);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.fx-faq details:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.1);border-color:var(--faq-accent,#64a19d);}
.fx-faq details[open]{border-color:var(--faq-accent,#64a19d);box-shadow:0 10px 24px rgba(0,0,0,.1);}
.fx-faq summary{cursor:pointer;list-style:none;padding:1.1rem 3.2rem 1.1rem 1.25rem;position:relative;font-family:var(--faq-question-font,inherit);font-size:1rem;line-height:1.45;color:var(--faq-text,#1f1a17);}
.fx-faq summary::-webkit-details-marker{display:none;}
.fx-faq summary::after{content:'+';position:absolute;right:1.15rem;top:50%;color:var(--faq-accent,#64a19d);font-size:1.6rem;font-weight:400;line-height:1;transform:translateY(-50%) rotate(0);transition:transform .25s ease,color .25s ease;}
.fx-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.fx-faq summary:hover,.fx-faq summary:focus-visible{color:var(--faq-accent,#64a19d);outline:none;}
.fx-faq summary:focus-visible{box-shadow:inset 0 0 0 3px var(--faq-focus,rgba(100,161,157,.35));border-radius:8px;}
.fx-faq details p{margin:0;padding:0 1.25rem 1.25rem;line-height:1.7;color:var(--faq-muted,#555);animation:fxFaqReveal .28s ease both;}
@keyframes fxFaqReveal{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:600px){.fx-faq{padding:3rem .85rem!important}.fx-faq summary{padding:1rem 2.8rem 1rem 1rem;font-size:.95rem}.fx-faq details p{padding:0 1rem 1rem;font-size:.94rem}.fx-faq details:hover{transform:none;}}
