/* Support page specific styles (kept minimal and non-duplicative) */
.page-hero { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: var(--space-6); align-items: center; background: var(--color-surface); border: 1px solid var(--gray-200); border-radius: var(--radius-xl); padding: clamp(1rem, 3vw, 2rem); overflow: hidden; }
.page-hero__media { border-radius: var(--radius-lg); height: 260px; overflow: hidden; }
.page-hero__content p { max-width: 52ch; }

.faq summary { cursor: pointer; font-weight: 600; padding: 0.5rem 0; }
.faq[open] summary { color: var(--color-primary); }
.faq ol, .faq ul { margin-top: var(--space-2); padding-left: 1.25rem; }

.form-grid > div { min-width: 0; }

.knowledge-list { display: grid; gap: 8px; padding-left: 0; list-style: none; }
.knowledge-list a { text-decoration: underline; text-underline-offset: 3px; }

.rating label { display: inline-flex; align-items: center; gap: 6px; margin-right: 8px; padding: 4px 8px; border: 1px solid var(--gray-300); border-radius: var(--radius-sm); }
.rating input { margin: 0; }

@media (max-width: 960px) { .page-hero { grid-template-columns: 1fr; } .page-hero__media { height: 200px; } }
