.page-main{padding:72px 24px 60px;max-width:960px;margin:0 auto;}

.page-header{text-align:center;margin-bottom:40px;}
.page-header h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;margin-bottom:12px;}
.page-header p{color:var(--cs-text-muted);font-size:15px;max-width:560px;margin:0 auto;}

.faq-group{margin-bottom:40px;}
.faq-group-title{font-size:1.25rem;font-weight:700;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--cs-border);}

.faq-item{border:1px solid var(--cs-border);border-radius:var(--cs-radius);margin-bottom:8px;background:var(--cs-surface);overflow:hidden;}
.faq-item.is-open{border-color:var(--cs-primary);}

.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;background:none;border:none;color:var(--cs-text);font-size:15px;font-weight:600;text-align:left;cursor:pointer;font-family:inherit;}
.faq-question:hover{color:var(--cs-primary);}
.faq-icon{flex-shrink:0;width:24px;height:24px;border-radius:50%;border:1px solid var(--cs-border);display:flex;align-items:center;justify-content:center;font-size:14px;transition:transform 0.3s ease,border-color 0.2s;}
.faq-item.is-open .faq-icon{transform:rotate(45deg);border-color:var(--cs-primary);color:var(--cs-primary);}

.faq-answer-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows 0.35s ease;}
.faq-item.is-open .faq-answer-wrap{grid-template-rows:1fr;}
.faq-answer{overflow:hidden;}
.faq-answer-inner{padding:0 20px 18px;color:var(--cs-text-muted);font-size:14px;line-height:1.75;}
