/* Contact page styles - modern, vibrant, responsive */
.hero-contact {
  background: linear-gradient(135deg, color-mix(in oklab, var(--color-primary) 12%, transparent), color-mix(in oklab, var(--color-danger) 12%, transparent));
  border-bottom: 1px solid var(--color-border);
}
.hero-contact .container { padding-block: var(--space-14); }
.hero-contact .hero-subtitle { color: var(--gray-600);  }

/* Layout */
.contact-layout { padding-block: var(--space-12); }
.contact-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: var(--space-8);
}
@media (max-width: 980px) {
  .contact-grid { grid-template-columns: 1fr; }
}

.contact-card .contact-list li { margin-bottom: var(--space-3); }
.contact-quick-actions { display: flex; gap: var(--space-3); margin-top: var(--space-4); flex-wrap: wrap; }
.support-hours { margin-top: var(--space-5); }
.support-hours p { margin-bottom: var(--space-2); }

/* Form */
.form-card { position: relative; }
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-4);
}
.form-field-full { grid-column: 1 / -1; }
.form-field .field-hint { color: var(--gray-600); font-size: var(--text-sm); margin-top: 6px; }
.form-field.optional label::after { content: " (opcjonalnie)"; color: var(--gray-500); font-weight: 500; }
.form-actions { display: flex; align-items: center; gap: var(--space-4); }
.form-status { min-height: 1.4em; color: var(--gray-700); }

/* Social + Hours */
.social-and-hours { padding-block: var(--space-4) var(--space-10); }
.social-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: var(--space-8);
  align-items: start;
}
@media (max-width: 980px) { .social-grid { grid-template-columns: 1fr; } }
.social-links { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-3); }
.hours-list li { margin-bottom: 6px; }

/* FAQ */
.faq { padding-block: var(--space-4) var(--space-10); }
.faq-list { display: grid; gap: var(--space-3); }
.faq-list details { border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: var(--space-4); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.faq-list details[open] { box-shadow: var(--shadow-md); }
.faq-list summary { cursor: pointer; font-weight: 700; }
.faq-list summary:focus-visible { box-shadow: var(--ring-primary); border-radius: var(--radius-xs); }
.faq-list details > div { margin-top: var(--space-3); color: var(--gray-700); }

/* Testimonials */
.testimonials { padding-block: var(--space-4) var(--space-10); }
.testimonials blockquote p { font-size: var(--text-lg); margin-bottom: var(--space-3); }
.testimonials footer { color: var(--gray-600); font-style: italic; }

/* Map */
.location { padding-block: var(--space-4) var(--space-12); }
.map-embed { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius-lg); overflow: hidden; }
.map-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }


