.cat-info { background: var(--surface-2); border-top: 1px solid var(--line); }
.cat-info-inner { max-width: 760px; margin: 0 auto; }
.cat-info-title { font-family: var(--f-display); font-size: clamp(24px, 3vw, 32px); font-weight: 400; color: var(--ink); margin: 0 0 16px; }
.cat-info-body { color: var(--ink-2); font-size: 15px; line-height: 1.7; }
.cat-info-body p { margin: 0 0 12px; }
.cat-info-body h3 { font-family: var(--f-display); font-size: 20px; font-weight: 400; color: var(--ink); margin: 24px 0 8px; }
.cat-info-body a { color: var(--burgundy); text-decoration: underline; text-underline-offset: 2px; }
.cat-info-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 20px 0 8px; }
.cat-faq-title { font-family: var(--f-display); font-size: 22px; font-weight: 400; color: var(--ink); margin: 40px 0 8px; }
.cat-faq-item { border-bottom: 1px solid var(--line); }
.cat-faq-item > summary { list-style: none; cursor: pointer; padding: 16px 32px 16px 0; position: relative; font-weight: 500; color: var(--ink); }
.cat-faq-item > summary::-webkit-details-marker { display: none; }
.cat-faq-item > summary::after { content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); font-size: 20px; line-height: 1; color: var(--ink-3); transition: transform .2s var(--ease); }
.cat-faq-item[open] > summary::after { transform: translateY(-50%) rotate(45deg); }
.cat-faq-a { padding: 0 0 16px; color: var(--ink-2); line-height: 1.7; }
.cat-faq-a p { margin: 0 0 8px; }
.cat-faq-a a { color: var(--burgundy); text-decoration: underline; text-underline-offset: 2px; }
.cat-hero .cat-cta { margin-top: 16px; }
@media (max-width: 960px) {
  .cat-info-inner { padding-inline: 16px; }
}
@media (max-width: 600px) {
  .cat-info-actions .smile-btn { width: 100%; justify-content: center; }
}
