/* Support page specific styles */

.section-spacing { margin-block: var(--space-16); }

.hero { margin-top: var(--space-6); }
.hero-inner { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-10); align-items: center; }
.hero-copy p { max-width: 60ch; }
.hero-actions { display: inline-flex; gap: var(--space-4); margin-top: var(--space-4); }
.hero-meta { color: var(--gray-600); margin-top: var(--space-3); }
.hero-media img { border-radius: var(--radius-xl); box-shadow: var(--shadow-xl); }

.contact-grid { grid-template-columns: repeat(3, 1fr); gap: var(--space-6); }
.contact-card .card-footer { margin-top: var(--space-4); }
.service-note { margin-top: var(--space-5); color: var(--gray-700); }

.faq-list details { border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: var(--space-4) var(--space-5); margin-bottom: var(--space-4); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.faq-list summary { cursor: pointer; font-weight: 700; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list details[open] { box-shadow: var(--shadow-md); }
.faq-content { margin-top: var(--space-3); color: var(--gray-700); }

.tips-grid { grid-template-columns: repeat(3, 1fr); gap: var(--space-6); }
.tips-grid ol { padding-left: var(--space-6); }
.tips-grid li { margin-bottom: var(--space-2); }

.video-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-6); }
.video-wrapper { position: relative; width: 100%; padding-top: 56.25%; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-lg); }
.video-wrapper iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.community-topics { grid-template-columns: repeat(3, 1fr); gap: var(--space-6); margin-top: var(--space-4); }
.community-cta { display: flex; gap: var(--space-4); margin-top: var(--space-4); }

.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-6); margin-bottom: var(--space-6); }
.team-media img { width: 100%; border-radius: var(--radius-xl); box-shadow: var(--shadow-xl); }
.team-media figcaption { color: var(--gray-600); margin-top: var(--space-3); }

#feedback-form .feedback-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-5); }
#feedback-form .feedback-grid .full { grid-column: 1 / -1; }

.resources-list { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-6); }
.resources-list .card .btn { margin-top: var(--space-3); }

/* Chat panel */
.chat-panel { position: fixed; right: var(--space-6); bottom: var(--space-6); width: min(420px, 92vw); background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-xl); box-shadow: var(--shadow-xl); display: grid; grid-template-rows: auto 1fr auto; overflow: hidden; z-index: 70; }
.chat-header { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-4) var(--space-5); border-bottom: 1px solid var(--color-border); }
.chat-body { padding: var(--space-4); display: grid; gap: var(--space-3); max-height: 50vh; overflow: auto; background: color-mix(in oklab, var(--gray-50) 70%, transparent); }
.chat-msg { padding: var(--space-3) var(--space-4); border-radius: var(--radius-lg); max-width: 80%; box-shadow: var(--shadow-sm); }
.chat-msg.bot { background: #eaf1ff; color: var(--color-text); }
.chat-msg.user { background: var(--color-primary); color: #fff; margin-left: auto; }
.chat-input { display: grid; grid-template-columns: 1fr auto; gap: var(--space-3); padding: var(--space-4); border-top: 1px solid var(--color-border); }
.chat-panel[hidden] { display: none; }

/* Responsive */
@media (max-width: 1024px) {
  .hero-inner { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr 1fr; }
  .tips-grid { grid-template-columns: 1fr 1fr; }
  .video-grid { grid-template-columns: 1fr; }
  .community-topics { grid-template-columns: 1fr 1fr; }
  .team-grid { grid-template-columns: 1fr 1fr; }
  .resources-list { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .contact-grid, .tips-grid, .community-topics, .team-grid, .resources-list { grid-template-columns: 1fr; }
  .hero-actions { flex-wrap: wrap; }
}
