.faq-page { background:radial-gradient(circle at 8% 14%,rgba(131,190,233,.27),transparent 22rem),radial-gradient(circle at 92% 20%,rgba(190,143,225,.25),transparent 24rem),#fffdf9; }
.faq-intro { max-width:860px; padding-bottom:36px; text-align:center; }.faq-intro .script { margin-bottom:14px!important; }.faq-intro h1 { max-width:none; margin-bottom:16px; color:var(--purple-deep); }.faq-intro > p:last-child { max-width:620px; margin:0 auto; color:var(--muted); font-size:1.08rem; }
.faq-list { display:grid; gap:14px; max-width:900px; padding-top:20px; }.faq-list details { overflow:hidden; border:1px solid rgba(90,44,145,.14); border-radius:20px; background:rgba(255,255,255,.78); box-shadow:0 12px 28px rgba(74,44,121,.08); }.faq-list summary { position:relative; padding:20px 58px 20px 22px; color:var(--purple-deep); font-weight:850; cursor:pointer; list-style:none; }.faq-list summary::-webkit-details-marker { display:none; }.faq-list summary::after { content:"+"; position:absolute; right:22px; top:50%; color:var(--blue-deep); font-size:1.7rem; transform:translateY(-52%); }.faq-list details[open] summary::after { content:"−"; }.faq-list p { max-width:760px; margin:0; padding:0 22px 22px; color:#4b3d5d; }
.faq-close { max-width:860px; padding:58px; border-radius:30px; text-align:center; background:linear-gradient(145deg,rgba(232,245,255,.88),rgba(238,224,249,.82)); box-shadow:var(--shadow); }.faq-close h2 { color:var(--purple-deep); }.faq-close p:not(.script) { color:#4b3d5d; }
@media (max-width:760px) { .faq-intro { padding-top:56px; }.faq-close { padding:38px 24px; }.faq-list summary { padding:18px 52px 18px 18px; }.faq-list p { padding:0 18px 20px; } }
