/* Shared native details/summary component, based on the homepage Questions section. */
.faq-band { background:var(--surface-tint); }
.faq-section { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:64px; margin-top:0; border-top:0; padding-block:var(--space-section); }
.faq-section h2 { font-size:38px; max-width:360px; margin:15px 0 18px; }
.faq-intro { max-width:32ch; font-size:17px; line-height:1.65; }
.faq-heading .faq-support { margin-top:22px; }
.faq-content { min-width:0; }
.faq-list { border-top:1px solid #c4d5e2; }
.faq-list details { border-bottom:1px solid #c4d5e2; }
.faq-list summary { display:flex; justify-content:space-between; align-items:flex-start; min-height:64px; padding:22px 12px; gap:20px; font-size:18px; line-height:1.5; font-weight:600; border-radius:6px; }
.faq-list summary:hover { color:var(--blue); background:#ffffff80; }
.faq-list summary:focus-visible { outline-offset:2px; }
.faq-list summary > span { min-width:0; }
.faq-list summary > .icon { flex:0 0 20px; width:20px; height:20px; margin-top:4px; color:var(--blue); }
.faq-list details[open] summary > .icon path:last-child { display:none; }
.faq-answer { padding:0 52px 24px 12px; }
.faq-list p { max-width:580px; font-size:17px; line-height:1.7; }
.faq-answer p a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.faq-answer p a:hover { color:var(--blue-dark); }
.faq-list .text-link { margin-top:12px; }
@media(max-width:850px) {
    .faq-section { grid-template-columns:minmax(0,1fr); gap:28px; }
    .faq-intro { max-width:48ch; }
}
@media(max-width:600px) {
    .faq-section { padding-block:var(--space-7); }
    .faq-section h2 { font-size:33px; }
    .faq-list summary { font-size:17px; padding:20px 4px; gap:16px; }
    .faq-answer { padding:0 4px 22px; }
    .faq-list p { font-size:16px; }
}
